Visual Studio 2022编译Blue-Burst-Patch-Project失败求助
编译Blue-Burst-Patch-Project项目的版本兼容问题
我已经联系过该仓库所有者,但对方没能帮忙解决编译失败的问题。我无法在Visual Studio 2022中编译Blue-Burst-Patch-Project项目。
尝试C++17标准编译时的报错
编译器报错信息如下:
1>C:\Users\Lenka\Desktop\Blue-Burst-Patch-Project-master\Blue Burst Patch Project\common.cpp(84,38): error C4996: 'std::codecvt_utf8<wchar_t,1114111,(std::codecvt_mode)0>': warning STL4017: std::wbuffer_convert, std::wstring_convert, and the <codecvt> header (containing std::codecvt_mode, std::codecvt_utf8, std::codecvt_utf16, and std::codecvt_utf8_utf16) are deprecated in C++17. (The std::codecvt class template is NOT deprecated.) The C++ Standard doesn't provide equivalent non-deprecated functionality; consider using MultiByteToWideChar() and WideCharToMultiByte() from <Windows.h> instead. You can define _SILENCE_CXX17_CODECVT_HEADER_DEPRECATION_WARNING or _SILENCE_ALL_CXX17_DEPRECATION_WARNINGS to suppress this warning. 1>D:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\include\codecvt(35,1): message : see declaration of 'std::codecvt_utf8' 1>C:\Users\Lenka\Desktop\Blue-Burst-Patch-Project-master\Blue Burst Patch Project\common.cpp(84,17): error C4996: 'std::wstring_convert<std::codecvt_utf8<wchar_t,1114111,(std::codecvt_mode)0>,wchar_t,std::allocator<wchar_t>,std::allocator<char>>': warning STL4017: std::wbuffer_convert, std::wstring_convert, and the <codecvt> header (containing std::codecvt_mode, std::codecvt_utf8, std::codecvt_utf16, and std::codecvt_utf8_utf16) are deprecated in C++17. (The std::codecvt class template is NOT deprecated.) The C++ Standard doesn't provide equivalent non-deprecated functionality; consider using MultiByteToWideChar() and WideCharToMultiByte() from <Windows.h> instead. You can define _SILENCE_CXX17_CODECVT_HEADER_DEPRECATION_WARNING or _SILENCE_ALL_CXX17_DEPRECATION_WARNINGS to suppress this warning. 1>D:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\include\xlocbuf(304,1): message : see declaration of 'std::wstring_convert' 1>C:\Users\Lenka\Desktop\Blue-Burst-Patch-Project-master\Blue Burst Patch Project\common.cpp(84,62): error C4996: 'std::wstring_convert<std::codecvt_utf8<wchar_t,1114111,(std::codecvt_mode)0>,wchar_t,std::allocator<wchar_t>,std::allocator<char>>::from_bytes': warning STL4017: std::wbuffer_convert, std::wstring_convert, and the <codecvt> header (containing std::codecvt_mode, std::codecvt_utf8, std::codecvt_utf16, and std::codecvt_utf8_utf16) are deprecated in C++17. (The std::codecvt class template is NOT deprecated.) The C++ Standard doesn't provide equivalent non-deprecated functionality; consider using MultiByteToWideChar() and WideCharToMultiByte() from <Windows.h> instead. You can define _SILENCE_CXX17_CODECVT_HEADER_DEPRECATION_WARNING or _SILENCE_ALL_CXX17_DEPRECATION_WARNINGS to suppress this warning.
尝试C++14标准编译时的报错
编译器报错信息如下:
1>C:\Users\Lenka\Desktop\Blue-Burst-Patch-Project-master\Blue Burst Patch Project\hooking.h(37,17): error C2429: language feature 'init-statements in if/switch' requires compiler flag '/std:c++17' 1>C:\Users\Lenka\Desktop\Blue-Burst-Patch-Project-master\Blue Burst Patch Project\hooking.h(35,29): message : This diagnostic occurred in the compiler generated function 'void Hooking::Hook::CallHookCallbacks(void)'
无论使用哪个标准编译,最终都会输出:
1>Done building project "Blue Burst Patch Project.vcxproj" -- FAILED. ========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ========== ========== Build started at 6:05 PM and took 09.433 seconds ==========
有没有人成功编译过这个项目?
内容的提问来源于stack exchange,提问作者Toilet Man
相关产品推荐
相关产品推荐

