参赛作品
大家好 您是否熟悉0xc00007b异常? 自从将X射线引擎转移到x64以来,已有许多关于0cx00007b问题的报道。 在90%的情况下,这是缺少64位OpenAL驱动程序的问题。
解决问题的想法
最初,我们不断回答您需要安装驱动程序,几个月后,我们写了有关启动和可能出现问题的FAQ。 但是此类报告并没有消失,独联体国家的人们并不特别喜欢阅读,因此我们决定从根本上解决问题:如果没有,请从发动机下方安装驱动程序。
步骤1:当DLL不足时启动程序
将库彼此连接的最简单方法是进行构建( 编译注释 ),但是在我们这种情况下,这无法完成。
因此,步骤1: 显式链接或extern "C"
。
我们需要什么:从引擎库中解开exe。 这是通过以下方式完成的:
1)我们在动态库中删除了启动引擎的功能:
extern "C" --
2)从我们的exe调用函数:
using RunFunc = void(__cdecl*)(const char*);
步骤2:检查驱动程式
好了,一切都很简单,我们得到了一个系统文件(也许有人会感到惊讶,但是操作系统并不总是在C:中),然后检查驱动程序文件夹中的dll:
步骤3:找不到档案
首先,我们需要向管理员询问用户权限,因为 将必须使用系统目录:
第二阶段:将库复制到系统
{ ...
结论
当然,该方法很有趣,但适用于此类项目。 祝大家好运!