当我刚刚声明时
在我的程序中使用UPX压缩.exe文件后,压缩成功。但是当我尝试启动压缩后的exe时,Windows告诉我它不是“有效的win32应用程序”。
UPX有一个错误报告(类似的错误),但它有不同的错误消息(“应用程序无法正确初始化(0xc0000005)”)。
在我的情况下,操作系统认为文件已损坏或其他原因,因此无法启动以显示错误!为什么??
Win7x64,C ++,VisualStudio,boost 1.47,UPX3.07
奇怪的消息:
boost::thread t1, t2;
在我的程序中使用UPX压缩.exe文件后,压缩成功。但是当我尝试启动压缩后的exe时,Windows告诉我它不是“有效的win32应用程序”。
UPX有一个错误报告(类似的错误),但它有不同的错误消息(“应用程序无法正确初始化(0xc0000005)”)。
在我的情况下,操作系统认为文件已损坏或其他原因,因此无法启动以显示错误!为什么??
Win7x64,C ++,VisualStudio,boost 1.47,UPX3.07
奇怪的消息:
解包exe会使得损坏的exe文件,会抛出与这里相同的错误。(“应用程序无法正常启动(0xc0000005)”)而且这是针对已解包的exe,不是报告中打包的情况。
extern "C" void tss_cleanup_implemented(void) {}
在包含boost线程头文件之前并不重要。结果是一样的。
main.cpp:
#include <boost/thread.hpp>
int main(int argc, char** argv)
{
boost::thread t;
return 0;
}
可能有人会尝试编译和压缩?
extern "C" void tss_cleanup_implemented(void) {}
,如此较旧的错误报告所述:https://svn.boost.org/trac/boost/ticket/1848 - HostileFork says dont trust SE