【问题标题】:VS 2010 VSTO Add in for EXCEL 2007 Won't loadVS 2010 VSTO Add in for EXCEL 2007 无法加载
【发布时间】:2010-06-09 19:25:07
【问题描述】:

我们有一个使用 Office 对象模型以 Excel 作为前端构建的应用程序。我们使用 C++ shim 将其加载为 Excel 2003 的 COM 插件,但我已将其更新为使用 Excel 2007 的最新 VSTO。我也一直在使用 VS 2010 获取最新版本。问题是我的开发机器在调试器模式下以及启动 Excel 2007 时一切正常,但我无法让它在任何其他机器上运行(我当前的目标机器是 Win7,开发是 XP)。我已经创建了插件的 ClickOnce 部署,我可以在 COM 插件列表中看到它,但是当我检查它以加载它时没有任何反应。我重新打开插件管理器,它没有被选中。我也尝试在注册表中进行设置,但是一旦我运行它,它就会将注册表设置为不加载。我已经尝试了我能想到的一切,并在网上搜索了所有内容,但没有骰子。任何帮助将不胜感激!

更新:我能够设置一些 VSTO 错误通知,我从我的应用程序以及使用 ClickOnce 部署的基本 Hello World 应用程序中得到了这个。我仍然没有找到答案,但我知道在加载项甚至可以触发 Startup 事件之前出现此错误:

Microsoft.VisualStudio.Tools.Applications.Runtime.CannotCreateStartupObjectException: 无法在程序集 PrevisionAddIn、Version=6.0.0.0、Culture=neutral、PublicKeyToken=null 中创建启动对象 PrevisionAddIn.PrevisionAddIn 的实例。 在 Microsoft.VisualStudio.Tools.Office.Runtime.DomainCreator.ExecuteCustomization.CreateEntryPoint(字符串 entryPointTypeName) 在 Microsoft.VisualStudio.Tools.Office.Runtime.DomainCreator.ExecuteCustomization.Microsoft.VisualStudio.Tools.Office.Runtime.Interop.IExecuteCustomization2.LoadEntryPoints(IntPtr serviceProvider)

【问题讨论】:

    标签: excel vsto excel-2007


    【解决方案1】:

    您能否禁用机器上的防病毒软件,看看是否有什么不同?我有一些通过 ClickOnce 部署的加载项,其中一个永远不会启用。我的老板会进去检查 Outlook 屏幕上的“启用”,然后关闭窗口,然后再进去,它就会被禁用。原来是他的杀毒软件过分热心。只是一个想法......

    此外,您不能将 ClickOnce 用于 Office2003。此加载项是否仍以 2003 年为目标,还是以 2007 年为目标?

    如果您使用的是 ClickOnce,您是否使用来自 Verisign 等证书颁发机构的有效证书对其进行签名?或者您是部署到http://localhost 并从那里安装它(不需要证书)。

    【讨论】:

    • 已经检查了防病毒选项,但没有做任何事情。这仅适用于 2007。2003 版本使用了 COM shim,我们有一个启动器应用程序来确保它已注册。我们有证书,所以我知道这不是问题。此外,当您拥有无效证书(或没有证书)时,它会告诉您尝试安装的时间。这可以看到插件,只是不会启用/加载它。
    • 您能否在加载项的启动和关闭中放置一个消息框,看看它是否在尝试启动和关闭它?我发现如果它在启动时崩溃,它将禁用加载项。你有日志吗?您确实在 Visual Studio 中运行过它并且运行良好?
    • 我添加了一些消息框,它甚至没有击中它们。我设置了 VSTO 错误通知,但我确实收到了一个错误,我将在下一条评论中发布,因为我没有足够的空间将它放在这里。我还创建了一个“Hello World”应用程序并使用 ClickOnce 发布它并得到了同样的错误。感谢您查看此内容,因为我似乎无法在线找到任何其他帮助。
    【解决方案2】:

    我发现问题出在我使用的 VS 2010 版本上。我在 Beta 2 版本中构建了该项目,并且没有时间升级。一旦我这样做了,它就会像宣传的那样工作。但我确实学到了很多关于如何启动和运行这个东西的知识!

    再次感谢!

    -埃里克

    【讨论】:

    • 我也就此与 ClickOnce 产品团队进行了交谈。他说消息框不工作是因为这不是 ClickOnce 的问题——Office 产品甚至没有加载应用程序。确保将 PIA 和 VSTO 运行时作为先决条件进行安装。
    猜你喜欢
    • 1970-01-01
    • 2011-05-03
    • 1970-01-01
    • 1970-01-01
    • 2011-01-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-12-02
    相关资源
    最近更新 更多