gpt4 book ai didi

windows-installer - MSI 绝望。 MSI 不会注册 DLL

转载 作者:行者123 更新时间:2023-12-04 06:50:08 36 4
gpt4 key购买 nike

我的 MSI 安装程序不会在 XP 上注册 DLL。在 Vista 上,除非我是管理员,否则它不会注册。在 Win7 上,它会随机注册 DLL 或不注册。

在 MSI 不会注册 DLL 后,用户被迫转到安装文件夹,键入“regsvr32 mydllname.dll” - 然后一切正常(这证明 DLL 是健康的)。

此文件的“注册”属性是 MSI 项目中的“selfReg”。 “COM”也不起作用。

我开始认为要么我出现幻觉,要么 MSI 根本无法注册 DLL.... 非常非常沮丧。已经一个星期试图解决这个问题和 NADA。在这一点上,我真的很讨厌 MS。

请帮忙。

最佳答案

最有可能发生的是您的注册代码写入错误的注册表根。例如,HKCRHKLM\Classes 的合并 View 和 HKCU\Classes , 并注册到 HKCR在某些情况下最终会出现在 HKCU\Classes ,有时在 HKCU\Classes\VirtualStore取决于运行安装程序的操作系统和帐户。

另外,如果你依赖于DllRegisterServer要从 MSI 注册您的 COM dll,MSI 引擎甚至不知道您的注册表项,这取决于实际的 DLL 代码。

我的建议是使用 DllRegisterServer 更改您的 MSI 以不使用自动注册。并且不要在HKCR下注册.相反,将您的注册添加为 HKLM\Classes 下的显式注册表项。 (除非您有特定的理由要求每用户 COM 注册,这是一个完全不同的主题)。

关于windows-installer - MSI 绝望。 MSI 不会注册 DLL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3251492/

36 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com