4

我的项目生成一个 dll,在调试模式下构建时,该 dll 由 Visual Studio 2005 自动注册。但是当我尝试使用“regsvr32”在命令提示符中注册相同的 dll 时,我无法注册。我收到以下错误,

模块“..”未能加载。确保二进制文件存储在指定路径或对其进行调试以检查二进制文件或相关 .DLL 文件的问题。

但我有所有相关的 dll。这个问题可能是什么原因。

我尝试使用以下命令注册和注销 dll,

regsvr32 dll_name.dll

regsvr32 /u dll_name.dll

4

4 回答 4

3

我只是有同样的问题。

如果您运行的是 64 位 Windows,并且您已将 32 位 DLL 放在 Windows\System32\ 中,那么它会给您这个错误。

只需将 DLL 放入 Windows\SysWOW64\ 并从那里注册。

这是我找到修复的地方:

http://csi-windows.com/blog/all/73-windows-64-bit/378-fixing-qregsvr32-the-module-failed-to-load-the-specified-module-could-not-be-发现q

于 2014-02-26T09:35:14.650 回答
0

从命令行运行 regsvr32 时,该 DLL 可能链接到不在路径中的另一个 DLL。

于 2011-01-19T18:50:56.430 回答
0

首先,您必须以Command管理员身份启动。其次,您没有指定dll文件在哪个目录中。如果您的操作系统是 32 位 windows 操作系统,则regsvr32.exe默认工作目录为C:\Windows\System32\.

你可以从这里得到一些帮助来回答你的问题,这里

于 2011-12-06T14:33:39.170 回答
0

我知道为时已晚......但我正在为其他人添加我的解决方案,因为在遵循上述答案后我遇到了同样的错误:

“我只是遇到了同样的问题。

如果您运行的是 64 位 Windows,并且您已将 32 位 DLL 放在 Windows\System32\ 中,那么它会给您这个错误。

只需将 DLL 放入 Windows\SysWOW64\ 并从那里注册。”

如果您在将 DDL 放入 SysWOW64 后遇到同样的错误,那么您需要打开 MSMQ 功能。

  1. 去开始
  2. 搜索“打开或关闭 Windows 功能”
  3. 找到“ Microsoft Message Queue(MSMQ) Server ”并启用它。 在此处输入图像描述

现在,再次注册相同的 DLL,这一次它将被注册

于 2022-02-18T13:39:55.280 回答