2

Debug/Release 中都存在此错误。

所以最初的问题是它有 32 位库,我没有链接到它的 64 版本。(这个问题的以前版本)我解决了这个问题。

并且应用程序适用于 Windows Server Standard 2008R2 x64。

我尝试在 Windows Server Enterprise 上运行应用程序,但收到上面(标题)提到的错误消息。

Dependency walker 说“找到了具有不同 CPU 类型的模块”,由于某种原因,它似乎错误地链接到 32 位库,但那是来自 mshtml.dll(win lib)的东西,它链接到 winsxs\x86.. 文件夹到COMCTL32.dll,但是那个 lib 在 System32 文件夹中(正确的一个)所以不知道为什么它链接到这个

有任何想法吗???

4

2 回答 2

2

我尝试重新安装 Visual C++ redistributable 但没有帮助。

哪一个 - 是您安装并打了补丁的 VC 编译器附带的,还是您从网上下载的?您安装的是 32 位 redist 还是 64 位 - 它们是单独安装的,即 64 位 redist 不包括 32 位 redist 文件。

发现具有不同 CPU 类型的模块

是的,您必须匹配 CPU 类型,全 32 位或全 64 位。

鉴于 IESHIMS 给人的印象是在浏览器插件上工作

  • 如果您制作浏览器帮助对象(BHO - IE 插件/扩展),那么您需要分别注册 32 位和 64 位,但如果您连接到 ie 作为外部服务器,那么您只需要确保您拥有正确的以匹配您的应用程序的其余部分。
  • 如果您制作 FF 插件,请不要忘记将 mozilla 目录添加到依赖的搜索路径中,并且当您进行更改时不要忘记您必须重置 firefox 插件缓存以尝试加载插件再次(更改文件夹名称,启动FF,然后改回名称)

%ProgramFiles%/Internet Explorer 到 System32。

所以这将是 64 位即 dll,到 ??/System32

我建议删除您添加到 system32 的任何 dll,这样会导致 dll 地狱。

于 2010-07-08T20:15:16.300 回答
0

我希望这个能帮上忙:

我在使用 Adob​​e Dreamweaver CS6 时遇到了同样的问题。

解决方案:

  1. 检查您的软件包(安装应用程序的文件夹),它可能包括带有 64 位和 32 位破解/修补 DLL 文件的破解文件夹或补丁文件夹。

注意:如果您没有此文件夹,请从任何 dll 网站下载。(Adobe Dream Weaver 专用文件:amtlib.dll)

  1. 为 32 位版本的应用程序复制 32 位 DLL 文件或为 64 位复制另一个文件。(不是您的 PC 版本,它将是应用程序版本)。

3.粘贴到您安装该应用程序的文件夹中。

于 2014-09-10T18:01:00.563 回答