对于0x0000007B问题相信大家一定都很头疼,编译好的软件在自己电脑上可以正常运行,更换一台电脑或许就无法正常运行.那么我们改怎么处理呢?
情况一:vs版本不一致导致的打不开软件
1方法一Windows日志查看软件运行失败的原因,一般都是dll版本不兼容引起的无法调用,解决方法
“”
错误应用程序名称: sqlceip.exe,版本: 15.0.2000.5,时间戳: 0x5d8a8117
错误模块名称: KERNELBASE.dll,版本: 10.0.19041.1023,时间戳: 0x924f9cdb
异常代码: 0xe0434352
错误偏移量: 0x0000000000034b89
错误进程 ID: 0xb20""
找打对应的版本的dll编译,比如说vs8.0.727.6195—vs.8.0.727.727由于目标机台和代码机台vs版本不一致导致调用某些dll不兼容时长会报0x0000007b错误,最简单的方法和目标机台一样的vs编译就可以轻松解决问题.
2方法二,打包整个代码机台软件dll(包括依赖的库dll),发给目标机台,卸载目标机台vs.
情况二:dll混用导致的软件打不开,同样会报警0x0000007b
1.解决方法,先找找是哪一个dll引起的.
2.找到这个dll之后替换对应版本的dll即可(X86,X64 DLL),这个主要是第三方的dll调用引起的,比如说软件是X64的视觉调用的dll,却是32位的,打开软件就会报错,替换视觉32位dll就可以了.归根结底还是问题一导致的本质原因.
情况三:编辑器的设置
编辑器的设置–Project—Property—Mainfest tool —Input and output
Embed Mainfest YES/NO
编辑器的设置–Project—Property—Linker Manifest File–
Generate Manifest YES/NO
其实0x00007b也不是那么可怕,找对方法也可以轻松解决.