2

我开发了一个 VSTO SE Excel 2003 插件。从 Visual Studio 启动和调试插件时,它运行良好。但是当我尝试从我自己的安装中部署它时,它永远不会起作用。

总结一下,这是我的安装过程:

  • 文件被复制到正确的位置

  • 我注册了插件:HKEY_CURRENT_USER\Software\Microsoft\Office\Excel\Addins\ 并使用适当的值(默认值、CommandLineSage、描述、FriendlyName、LoadBehavior、Manifest)。

  • 我还在 HKEY_LOCAL_MACHINE\SOFTWARE\Classes\ 中添加条目(使用包含 UUID 的 CLSID 键)

  • 和 HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx} 和 InprocServer32(带有清单名称和路径,addinloader.dll 完整路径),ProgID(带有程序集名称(不带扩展名)),可编程和VersionIndependententProgID(也带有程序集名称)。

  • 我使用 caspol -m -ag "xxx" -url "MyUrl\Assemblies.dll" FullTrust -name "name" 将完全信任策略设置为每个程序集的 url

我错过了什么吗?

4

3 回答 3

2

在部署机器中,检查以下是否可用:

  1. VSTO 运行时的当前版本

  2. Office 2003 主要互操作程序集

问候,

颜凯...

于 2009-12-09T10:06:23.057 回答
0

看起来问题出在您的注册表项上。查看以下链接:

http://msdn.microsoft.com/en-us/library/bb386106.aspx

您的 Software\Classes 和 Software\Microsoft 条目应该在同一个键下,HKCU 或 HKLM。如果你有一个在 HKCU 下,另一个在 HKLM 下,它会弄乱插件。

所以我认为注册表项 HKEY_CURRENT_USER\Software\Microsoft\Office\Excel\Addins\ 应该是 HKEY_LOCAL_MACHINE\Software\Microsoft\Office\Excel\Addins。

HTH...

于 2010-03-19T21:32:37.650 回答
0

调试 VSTO 安装/加载问题的一个好方法是让 VSTO 显示所有错误。为此,请创建一个名为 VSTO_SUPPRESSDISPLAYALERTS 且值为 0 的环境变量,重新安装/修复您的插件,然后再次尝试运行 Excel。

于 2009-12-13T07:42:05.250 回答