Windows无法看到64位dll

时间:2016-05-04 05:45:43

标签: c++ windows dll 32bit-64bit ssp

所以我有一个SSP dll我正在工作(虽然我相信dll的类型是无关紧要的)。无论如何,这个dll工作得很好,它可以在没有任何错误的情况下编译32位和64位架构。

32位dll在32位盒子上完美运行。但是,每当我尝试在64位盒子上加载64位dll时,Windows都说“找不到指定的模块。”

我检查了出口,一切都很好。但即使试图在dll上做一个rundll32,它也说无法找到它。

所以我想知道是否有其他人之前看过这个,其中windows似乎无法看到你的dll。

提前致谢

1 个答案:

答案 0 :(得分:0)

1,您可以使用Dependency walker(http://www.dependencywalker.com/)来检查dll是否引用任何其他dll(可能缺少)。

2,为了排除故障,你可以使用/ MT而不是/ MD来构建dll(因为/ MT会将所有相关的dll组合成自己的dll)

3,为了确保所有dll(和第二层)都在查找路径中,你可以在使用dll之前显式配置PATH(如SET PATH = d:\ somefolder)