1

大家好,

我不熟悉为我的 COM 级插件打包 Windows 安装程序的正确技术(这是注册 COM 服务器的更高级别版本 [实现 ID2Extesibility 接口] 并且可以一次分发到所有办公产品 [word、excel、 ETC])。我正在使用 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

??

任何帮助都会很棒,因为我可能不知道我在寻找什么,所以无法找到任何相关信息。

编辑:

我认为这是注册部分,因为插件在我的电脑上运行良好,但没有安装在客户的电脑上

4

1 回答 1

0

安装程序似乎决定引用我的开发二进制文件而不是安装位置。如何在安装程序中更改此值?

如果您认为问题是由安装程序负责,请检查 CodeBase 是否未硬编码为指向C:\MyVS10Install. 您应该能够在 msi 数据库的 Registry 表中看到这一点

如果它被硬编码指向那里,那么尝试使用[INSTALLDIR]\My Install Path\MyProjDLL.dll作为值

于 2013-06-09T01:51:40.630 回答