dll - 无法使用 WiX 注册 DLL

标签 dll com wix wix3.5

我正在尝试使用 WiX 注册 DLL。现在我知道并理解我应该使用 heat并让它为我提取注册表信息,但加热似乎失败并显示以下错误消息:heat.exe : warning HEAT5150 : Could not harvest data from a file that was expected to be a SelfReg DLL: C:\Users\seb\Desktop\Development\addin.dll. If this file does not support SelfReg you can ignore this warning. Otherwise, this error detail may be helpful to diagnose the failure: Unable to load file: C:\Users\seb\Desktop\Development\addin.dll, error: 193

我环顾四周,发现这篇文章更详细地解释了 registering DLLs但如果可能的话,我想避免自助注册路线。我还看到下面提到了手动注册 DLL,但我不太熟悉注册表或 COM 对象,因此不知道在哪里可以获得 CLSID、ProgId 以及所提到的任何其他信息。

如果有人能指出我正确的方向或向我解释我需要做什么才能通过 heat 运行 DLL我们将不胜感激。

最佳答案

我知道这是旧的,但我想在这里添加一个答案 - 发生这种情况的原因是因为您尝试注册的 dll 是 64 位 dll - 而 Heat.exe 是 32 位,因此它无法在其中加载 dll地址空间。不管怎样,只要指向 32 位版本的 dll 来创建 wxs 文件,您就不会收到该错误。

关于dll - 无法使用 WiX 注册 DLL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12463256/

相关文章:

c++ - CoInitializeEx 和 CoInitializeSecurity 失败

wix - 如何强制 WiX Bootstrap 下载 MSI 包?

WiX + Heat,获取目录但不包括安装中的父文件夹

visual-studio-2013 - WiX:VS2013 如何更改输出目录

c++导出和使用dll函数

c++ - 从 DLL 导出 C++ 类

c# - 在c#中使用dll的问题

c++ - '链接错误 : already defined' when using COM interface

c# - 正确定位 DLL 的 App.config 部分处理程序程序集

c++ - 在进程之间共享类实例的方法