【发布时间】:2013-06-03 11:39:12
【问题描述】:
大家好,
我不熟悉为我的 COM 级插件打包 Windows 安装程序的正确技术(这是注册 COM 服务器的更高级别版本 [实现 ID2Extesibility 接口] 并且可以一次分发到所有办公产品 [word ,excel等])。我正在使用 VS2010 并试图让插件在客户的计算机上运行。我相信我已经发现问题出在 COM 注册本身。似乎安装程序已决定引用我的开发二进制文件而不是安装位置。如何在安装程序中更改此值?
基本上是写
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Wow6432Node\CLSID\{MYclassID}\InprocServer32\{VER}\CodeBase 为 "C:\MyVS10Install\MyProj\Debug\MyProjDLL.dll"
如何将其更改为:
c:\Program Files\My Install Path\MyProjDLL.dll
??
任何帮助都会很棒,因为我可能不知道我在寻找什么,所以无法找到任何相关信息。
编辑:
我认为这是注册部分,因为插件在我的电脑上运行良好,但没有安装在客户的电脑上
【问题讨论】:
-
我已尝试更改“主要输出来自...”中的值->属性->注册到 vsdrpCOMRelativePath 和 vsdrpCOM
-
那么,这个 reg 密钥是由安装程序编写的,还是 regsrvr/regasm?如果安装程序负责将密钥写入机器,则尝试使用 [INSTALLDIR]\My Install Path\MyProjDLL.dll,只要 INSTALLDIR 设置正确,Windows Installer 就会将其映射出来。
标签: c# com office-interop