Windows 应用程序未能正确初始化(0xc0150002)

Windows 应用程序未能正确初始化(0xc0150002),windows,visual-studio,visual-c++,visual-studio-2005,Windows,Visual Studio,Visual C++,Visual Studio 2005,我的mfc应用程序是在WindowsServer2000SP4上运行的VisualStudio5中创建的,我为它创建了一个版本,并尝试运行WinXPSLP2。它告诉我应用程序未能正确初始化0xc0150002 我试过做以下事情 -安装微软Visual C++ 2005 SP1可重新分发包X86,其中一个位于发布文件夹内,还有一个可从网站下载 从microsoft visual sutdio\vc\redist复制了所有dll和mainfest 我仍然收到同样的消息。c 可能有什么问题?我如何修复

我的mfc应用程序是在WindowsServer2000SP4上运行的VisualStudio5中创建的,我为它创建了一个版本,并尝试运行WinXPSLP2。它告诉我应用程序未能正确初始化0xc0150002

我试过做以下事情 -安装微软Visual C++ 2005 SP1可重新分发包X86,其中一个位于发布文件夹内,还有一个可从网站下载 从microsoft visual sutdio\vc\redist复制了所有dll和mainfest

我仍然收到同样的消息。c

可能有什么问题?我如何修复它

一些需要检查的事项:

检查项目的/SUBSYSTEM链接器选项。它可能包括操作系统主要/次要版本号。 确保在开发人员计算机上使用适当的Windows XP PlatformSDK;检查WINVER、\u WIN32\u WINNT的值 使用depends查看问题是否存在于未解决的依赖项中 在目标计算机上检查应用程序所需的运行时版本。我通常通过从一边查看应用程序的清单并从另一边查看目标机器的WinSxS文件夹来实现这一点。最近,Microsoft进行了ATL安全更新;由更新的Visual Studio创建的新二进制文件将不会在没有相同更新的运行时版本的计算机上运行。
您可能已将安全更新或编译器更新应用于VS2005 SP1。这使得它生成一个清单,它要求一个与微软Visual C++ 2005 SP1可重分发包x86 .< /p>安装的MFC/CRT DLL不同的清单。
尝试使用Dependes.exe并打开应用程序,然后在菜单中选择Profile。请在下面的输出窗口中查看更详细的说明。

是否正在尝试运行调试版本?这可能会导致类似于0xc0150002的错误。尝试发布版本,或者您可以根据静态库而不是动态库进行编译。如果在发布版本中遇到此问题,那么很可能是缺少dll,在这种情况下,请尝试运行Dependes.exe或不正确的清单

如果缺少对运行时dll的依赖项,可以尝试为其创建部署项目,因为这将检测适当的运行时dll并将其构建到安装程序中