Visual Studio 2010安装VC9运行时的版本... 4974,其版本为.pdbs are unavailable。我如何强制我的GME.exe
使用较旧的VC9运行时?如何强制本机应用程序使用较旧的C运行时
我已经试过投入GME.exe.config
这样的:
<?xml version="1.0"?>
<configuration>
<windows>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<assemblyIdentity type="win32" name="GME" processorArchitecture="x86" version="1.0.0.1"/>
<dependentAssembly>
<assemblyIdentity type="win32" name="Microsoft.VC90.CRT" publicKeyToken="1fc8b3b9a1e18e3b" processorArchitecture="x86" />
<bindingRedirect oldVersion="9.0.21022.8-9.0.21022.4974" newVersion="9.0.30729.4148" />
<bindingRedirect oldVersion="9.0.30729.0-9.0.30729.4974" newVersion="9.0.30729.4148" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity type="win32" name="Microsoft.VC90.MFC" publicKeyToken="1fc8b3b9a1e18e3b" processorArchitecture="x86" />
<bindingRedirect oldVersion="9.0.21022.8-9.0.21022.4974" newVersion="9.0.30729.4148" />
<bindingRedirect oldVersion="9.0.30729.0-9.0.30729.4974" newVersion="9.0.30729.4148" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity type="win32" name="Microsoft.VC90.ATL" publicKeyToken="1fc8b3b9a1e18e3b" processorArchitecture="x86" />
<bindingRedirect oldVersion="9.0.21022.8-9.0.21022.4974" newVersion="9.0.30729.4148" />
<bindingRedirect oldVersion="9.0.30729.0-9.0.30729.4974" newVersion="9.0.30729.4148" />
</dependentAssembly>
</assemblyBinding>
</windows>
</configuration>
然而,sxstrace报道:
INFO: Resolving reference Microsoft.VC90.CRT,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="9.0.21022.8"
....
INFO: Publisher Policy redirected assembly version.
在Windows 7
添加<publisherPolicy apply="no"/>
下
<dependentAssembly>
结果
ERROR: Activation Context generation failed.
没有其他有用的信息
注意这只是为了调试我的本地副本,而不是重新分配,所以我并不担心ab发布安全更新或发布者政策的其他好处。
请注意,根据http://msdn.microsoft.com/en-us/library/aa985618%28VS.90%29.aspx“调试版本的应用程序不可再分发”(但我不打算无论如何重新分配这个版本) – 2010-06-23 20:03:16