C++ 错误:";应用程序无法启动,因为其并行配置不正确;
我已经使用VisualStudio2008创建了一个应用程序,它在WindowsXP上运行良好。但当我尝试在中执行相同的EXE文件时,我得到: 错误:应用程序无法启动,因为其并行配置不正确 当我检查事件查看器时,下面是它的说明:C++ 错误:";应用程序无法启动,因为其并行配置不正确;,c++,windows,mfc,windows-vista,side-by-side,C++,Windows,Mfc,Windows Vista,Side By Side,我已经使用VisualStudio2008创建了一个应用程序,它在WindowsXP上运行良好。但当我尝试在中执行相同的EXE文件时,我得到: 错误:应用程序无法启动,因为其并行配置不正确 当我检查事件查看器时,下面是它的说明: Log Name: Application Source: SideBySide Date: 12/10/2010 10:06:08 AM Event ID: 33 Task Category: None Level:
Log Name: Application
Source: SideBySide
Date: 12/10/2010 10:06:08 AM
Event ID: 33
Task Category: None
Level: Error
Keywords: Classic
User: N/A
Computer: WIN-8A4INI0BH2R
Description:
Activation context generation failed for "C:\MyApp.exe". Dependent Assembly Microsoft.VC90.CRT,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="9.0.21022.8" could not be found. Please use sxstrace.exe for detailed diagnosis.
Event Xml:
<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
<System>
<Provider Name="SideBySide" />
<EventID Qualifiers="49409">33</EventID>
<Level>2</Level>
<Task>0</Task>
<Keywords>0x80000000000000</Keywords>
<TimeCreated SystemTime="2010-12-10T04:36:08.000Z" />
<EventRecordID>181</EventRecordID>
<Channel>Application</Channel>
<Computer>WIN-8A4INI0BH2R</Computer>
<Security />
</System>
<EventData>
<Data>Microsoft.VC90.CRT,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="9.0.21022.8"</Data>
<Data>
</Data>
<Data>
</Data>
<Data>C:\MyApp.exe</Data>
<Data>
</Data>
<Data>
</Data>
</EventData>
</Event>
日志名称:应用程序
资料来源:旁边
日期:2010年10月12日上午10:06:08
活动编号:33
任务类别:无
级别:错误
关键词:经典
用户:不适用
计算机:WIN-8A4INI0BH2R
说明:
“C:\MyApp.exe”的激活上下文生成失败。找不到相关程序集Microsoft.VC90.CRT、processorArchitecture=“x86”、publicKeyToken=“1fc8b3b9a1e18e3b”、type=“win32”、version=“9.0.21022.8”。请使用sxstrace.exe进行详细诊断。
事件Xml:
33
2.
0
0x8000000000000
181
应用
WIN-8A4INI0BH2R
Microsoft.VC90.CRT,processorArchitecture=“x86”,publicKeyToken=“1fc8b3b9a1e18e3b”,type=“win32”,version=“9.0.21022.8”
C:\MyApp.exe
目标计算机上没有CRT运行时DLL。为了避免这种情况,您可以安装VC9可再发行文件,或者静态地将您的程序与运行时链接()。也可能有帮助。目标计算机上没有CRT运行时DLL。为了避免这种情况,您可以安装VC9可再发行文件,或者静态地将您的程序与运行时链接()。可能也会有帮助。我意识到这是一个旧线程,但我遇到了相同的错误,因此没有一个线程引用我遇到的问题的原因。
我使用了sxstrace程序,它将我指向配置文件,其中XML存在语法问题 我意识到这是一个旧线程,但我遇到了相同的错误,因此没有一个线程引用我遇到的问题的原因。
我使用了sxstrace程序,它将我指向配置文件,其中XML存在语法问题 你在Vista机器上安装了正确的VC90 CRT吗?@James McNellis,没有。这是否意味着用户也必须在他们的Vista机器上安装VC90 CRT才能运行我的应用程序?@Subhen,答案是肯定的。看@James McNellis,它成功了,应该是answer@Subhen:这并不意味着您必须在所有Vista计算机上安装VC90 CRT。您有2个选项:静态链接运行时,使用私有程序集(只需将清单和crt文件复制到您的应用程序目录)。您是否在Vista机器上安装了正确的VC90 crt?@James McNellis,否。这是否意味着用户也必须在其Vista机器上安装VC90 crt才能运行我的应用程序?@Subhen,答案是肯定的。看@James McNellis,它成功了,应该是answer@Subhen:这并不意味着您必须在所有Vista计算机上安装VC90 CRT。您有2个选项:静态链接运行时,使用私有程序集(只需将清单和crt文件复制到您的应用程序目录)。您也可以使用私有程序集,例如,在您的应用程序目录下,可以有一个名为“Microsoft.VC90.crt”的目录,其中包含运行时DLL。然后应用程序将自动找到它们。如果应用程序需要在没有安装权限的情况下进行分发,并且可以节省安装整个CRT的时间,那么这将非常有用。请参阅。要解决私有程序集的问题,请阅读这篇优秀的文章-您也可以使用私有程序集,例如,在您的应用程序目录下,可以有一个名为“Microsoft.VC90.CRT”的目录,其中包含运行时DLL。然后应用程序将自动找到它们。如果应用程序需要在没有安装权限的情况下进行分发,并且可以节省安装整个CRT的时间,那么这将非常有用。请参阅。要解决私有程序集的问题,请阅读这篇优秀的文章-