在干净的计算机上(没有可视化工作室),我将Debug文件夹压缩为其他人(在我的计算机上工作),其他人试图启动该程序,我收到了错误
System.DllNotFoundException:无法加载DLL“HookHandler.dll”:找不到指定的模块。 (HRESULT异常:0x8007007E)
然后我让他安装 http://www.microsoft.com/en-us/download/details.aspx?id=8328 认为这会有所帮助。有什么想法,为什么它没有在他的电脑上找到dll,但在我的电脑上发现它很好?编辑:我应该注意到HookHandler.dll与exe位于同一个文件夹中。再一次,当我运行exe并且HookHandler在我的文件夹中时,它可以在我的计算机上运行。我用HookHandler将其压缩并将其交给其他人并且它不起作用我验证了HookHandler在他的文件夹中。
对于某些原因,安装visual studio修复了这个问题。所以它必须是HookHandler所依赖的东西所以我需要尝试使用ProcMon工具或者depends.exe来查看HookHandler取决于我的想法。
感谢, 迪安
答案 0 :(得分:1)
不确定问题是什么,但我建议安装.Net Framework 4并试一试。
以下是下载链接:http://www.microsoft.com/en-us/download/details.aspx?id=17851
答案 1 :(得分:1)
我的猜测是HookHandler.dll不在您的本地项目中,并且VS正从您计算机上的其他位置抓取它。如果这是真的,你应该做的就是:
在项目中使用(使用VS),查看HookHandler.dll的属性,将“Copy Local”设置为True,重建,重新压缩和重新发送。
我以前遇到过这个问题(但是使用了不同的DLL)并修复了它,希望它对你有用。
答案 2 :(得分:0)
确保DLL位于bin中。属性 - >复制本地 - >总是
你不能指望人们在他们的计算机上有像HookHandler.dll这样的模糊垃圾:p
答案 3 :(得分:0)
好的,这非常奇怪。我们使用Debug配置构建我们的东西并随之提供,因为我们需要所有生产线上的所有行号和所有好东西。该信息值得使用Release版本的任何微小性能改进的好处(而且我们现在的表现远远超过我们现在所需要的。)
那就是说,更换C ++ dll,pdf,ilk等的发布版本修复了这个问题!!!!!所以它与找不到它们无关,而是使用一些visual studio dll与它有关,因为它是在Debug配置中编译的。
所以基本上任何C ++ dll都必须在Release模式下编译,而我们的其他项目现在使用Debug模式进行编译并修复了这个问题。