当我打开Excel时出现第二个Excel Addin(功能区)安装,为什么?

时间:2012-09-10 09:46:57

标签: c# excel vsto ms-office ribbon

我已经制作了Excel加入(功能区)。

当我运行.vsto并安装它时,我在Windows中的程序下安装了一个。

但是,当我打开我的Excel程序时,程序列表中会出现另一个安装。

为什么这样,它应该不是那样的?

更新: 我注意到Application我设置了Target framework: ".NET Framework 4 Client Profile" 并在Publish - Prerequisites中添加了Microsoft .NET Framework 4客户端配置文件(x86和x64),与它有什么关系?

3 个答案:

答案 0 :(得分:2)

因为可能在配置中您已将应用程序设置为自动更新 因此,在Excel启动后,它会尝试自动更新。

有可能吗?

答案 1 :(得分:2)

开发计算机上安装VSTO时可能会发生这种情况。这是因为在调试VSTO时它会安装,虽然它不会在程序&功能列表。即使在调试停止后,VSTO仍将保持安装状态。即使执行正确的安装,调试的VSTO的残余仍将保留在注册表中。

我发现解决此问题的最佳方法(虽然不理想)是在执行正确安装之前在此位置手动删除注册表项:

HKEY_CURRENT_USER\Software\Microsoft\Office\Word\Addins\[YOUR VSTO PROJECT NAME]

答案 2 :(得分:2)

在开发计算机上的Excel应用程序中找到两个相同加载项的实例是很常见的。因为在发布或进行安装项目构建之前,必须在IDE中构建该加载项代码。  每当Excel启动时,它会自动检测计算机上存在的加载项清单。 由于您还安装了加载项,因此您的计算机现在有两个位置,您可以在项目文件夹中找到加载项,另一个位于已安装加载项的位置。 所以excel会自己添加两个加载项,因为它找到了两个加载项,就这么简单。

它与您的发布先决条件和目标框架无关。

您可以在窗口中找到 FIlE->选项 - >加载项> ,然后点击标签“管理“,选择 COM加载项,然后点击”开始“。

现在,在打开的窗口中,您将找到列出的插件,您可以删除不希望在Excel应用中看到的插件。

但是,无论如何,下次构建excel加载项并启动Excel时,它会再次自动将该加载项添加到Excel应用程序中。

因此,在您想要测试安装程序或类似内容之前,最好不要安装您在计算机上创建的加载项。