我有一个使用 OpenAL 库的 32 位 C++ Windows 应用程序。我正在使用官方 OpenAL 安装程序来安装所需的 DLL 文件,但是当我发布我的应用程序时,我想找到一种方法来交付它,而不需要用户像我一样单独安装 OpenAL。
对于其他 DLL 文件,我只需将它们添加到我的项目中,但对于 OpenAL 我似乎遇到了问题。这可能吗?如果是这样,怎么办?
显然,我混淆了 Windows 中的 System32 和 SysWow64 文件夹。
应该是相反的!
.dll
文件.dll
文件我做了什么:
所以我从官方安装源安装了OpenAL。此安装程序会将
OpenAL32.dll
文件复制到 System32
和 SysWow64
文件夹中。
由于我的应用程序是 32 位,我需要将
OpenAL32.dll
从 SysWow64 文件夹复制到我的可执行目录中。一旦我卸载了 OpenAL(它从我的 Windows .dll
和 System32
文件夹中删除了这些 SysWow64
文件),它就可以与我的可执行文件附带的 .dll
文件一起使用。
安装Nuget包OpenAL.Soft,该包包含32位和64位Windows dll、导入库和头文件。您将不再需要 Windows 目录 dll。