我使用Visual Studio 2008创建了一个MFC应用程序,它在Windows XP上运行良好。但是当我尝试在Windows Vista中执行相同的EXE文件时,我得到了:
错误:应用程序无法启动,因为其并排配置不正确
当我检查事件查看器时,下面是它所说的内容:
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>
答案 0 :(得分:7)
目标计算机上没有CRT运行时DLL。为避免这种情况,您可以安装VC9可再发行组件,也可以静态链接程序与运行时(more info)。 This question也可能有所帮助。
答案 1 :(得分:0)
我意识到这是一个旧线程,但是我遇到了同样的错误,并且所有SO线程都没有提到我所遇到问题的原因。 我使用了sxstrace程序,它指向配置文件,其中XML出现语法问题!