libprotobuf.dll XP中的loadlibrary 3765269347

libprotobuf.dll loadlibrary 3765269347 in XP

提问人:dearwangsen 提问时间:11/15/2023 更新时间:11/15/2023 访问量:26

问:

我使用以下命令将 Protobuf 构建为动态库:

VS2015 Update3 v140_xp Windows10

当我尝试在 Windows XP 上执行“loadlibrary()”时,它返回“null”,而“GetLastError()”报告“3765269347”。此问题发生在 protobuf 版本 >= '3.6.0' 中。版本 <= '3.5.2' 不会出现此问题。

我使用以下 cmake 命令来生成解决方案:

cmake -G “Visual Studio 14 2015” -A Win32 -DGOOGLE_PROTOBUF_SUPPORT_WINDOWS_XP=1 -Dprotobuf_BUILD_TESTS=OFF ..

在 vs2015 中,我使用了:

/D“_WIN32_WINNT=0x502”/Zc:threadSafeInit- /MT

此外,当我将 protobuf 静态链接到我的可执行文件时,程序运行没有问题。

visual-studio-2015 协议缓冲区 windows-xp

评论

0赞 273K 11/15/2023
你的问题是什么?
0赞 dearwangsen 11/16/2023
您好,我使用 .调用系统时,它返回 ,并返回 。libprotobuf.dllv140_xpWin10LoadLibraryA()XPnullGetLastError()3765269347
0赞 273K 11/16/2023
这是你的故事。你的问题是什么?
0赞 dearwangsen 11/16/2023
为什么会失败?LoadLibraryA()libprotobuf.dll
0赞 273K 11/16/2023
因为 DLL 中的 DllMain() 函数由于未处理的 C++ 异常而死亡。

答: 暂无答案