2012-08-09 124 views
3

帶有Vista/Win7更新的Visual Studio 2005 SP1。 PC最初安裝了VS 2010,但由於其他團隊使用2005,所以在羅馬時......無法運行應用程序的調試版本

最初,我安裝了2005和更新並嘗試構建/運行。生成運行良好,運行(在調試模式下)失敗。所以我卸載了VS更新,刪除了VS和相關組件的所有版本,並用SP和Win7更新重新安裝了VS2005。

同樣的問題在調試模式下運行。我收到一個對話框,告訴我應用程序配置不正確。事件日誌的檢查顯示:

Activation context generation failed for "u:\ESM\ESM_Layer\debug\ESM_Win32_App.exe". Dependent Assembly Microsoft.VC80.DebugCRT,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="8.0.50727.6195" could not be found. Please use sxstrace.exe for detailed diagnosis 

運行sxstrace給我:

Begin Activation Context Generation. 
Input Parameter: 
    Flags = 0 
    ProcessorArchitecture = Wow32 
    CultureFallBacks = en-US;en 
    ManifestPath = u:\ESM\ESM_Layer\debug\ESM_Win32_App.exe 
    AssemblyDirectory = u:\ESM\ESM_Layer\debug\ 
    Application Config File = 
----------------- 
INFO: Parsing Manifest File u:\ESM\ESM_Layer\debug\ESM_Win32_App.exe. 
    INFO: Manifest Definition Identity is (null). 
    INFO: Reference: Microsoft.VC80.DebugCRT,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="8.0.50727.762" 
    INFO: Reference: Microsoft.VC80.DebugCRT,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="8.0.50608.0" 
    INFO: Reference: Microsoft.VC80.DebugCRT,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="8.0.50727.6195" 
INFO: Resolving reference Microsoft.VC80.DebugCRT,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="8.0.50727.762". 
    INFO: Resolving reference for ProcessorArchitecture WOW64. 
     INFO: Resolving reference for culture Neutral. 
      INFO: Applying Binding Policy. 
       INFO: No publisher policy found. 
       INFO: No binding policy redirect found. 
      INFO: Begin assembly probing. 
       INFO: Did not find the assembly in WinSxS. 
       INFO: Attempt to probe manifest at C:\Windows\assembly\GAC_32\Microsoft.VC80.DebugCRT\8.0.50727.762__1fc8b3b9a1e18e3b\Microsoft.VC80.DebugCRT.DLL. 
       INFO: Did not find manifest for culture Neutral. 
      INFO: End assembly probing. 
    INFO: Resolving reference for ProcessorArchitecture x86. 
     INFO: Resolving reference for culture Neutral. 
      INFO: Applying Binding Policy. 
       INFO: Find publisher policy at C:\Windows\WinSxS\manifests\x86_policy.8.0.microsoft.vc80.debugcrt_1fc8b3b9a1e18e3b_8.0.50727.762_none_6d78e2ee5a7eb616.manifest 
       INFO: Publisher Policy redirected assembly version. 
       INFO: Post policy assembly identity is Microsoft.VC80.DebugCRT,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="8.0.50727.762". 
      INFO: Begin assembly probing. 
       INFO: Attempt to probe manifest at C:\Windows\WinSxS\manifests\x86_microsoft.vc80.debugcrt_1fc8b3b9a1e18e3b_8.0.50727.762_none_24c8a196583ff03b.manifest. 
       INFO: Manifest found at C:\Windows\WinSxS\manifests\x86_microsoft.vc80.debugcrt_1fc8b3b9a1e18e3b_8.0.50727.762_none_24c8a196583ff03b.manifest. 
      INFO: End assembly probing. 
INFO: Resolving reference Microsoft.VC80.DebugCRT.mui,language="*",processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="8.0.50727.762". 
    INFO: Resolving reference for ProcessorArchitecture WOW64. 
     INFO: Resolving reference for culture en-US. 
      INFO: Applying Binding Policy. 
       INFO: No publisher policy found. 
       INFO: No binding policy redirect found. 
      INFO: Begin assembly probing. 
       INFO: Did not find the assembly in WinSxS. 
       INFO: Attempt to probe manifest at C:\Windows\assembly\GAC_32\Microsoft.VC80.DebugCRT.mui\8.0.50727.762_en-US_1fc8b3b9a1e18e3b\Microsoft.VC80.DebugCRT.mui.DLL. 
       INFO: Did not find manifest for culture en-US. 
      INFO: End assembly probing. 
     INFO: Resolving reference for culture en. 
      INFO: Applying Binding Policy. 
       INFO: No publisher policy found. 
       INFO: No binding policy redirect found. 
      INFO: Begin assembly probing. 
       INFO: Did not find the assembly in WinSxS. 
       INFO: Attempt to probe manifest at C:\Windows\assembly\GAC_32\Microsoft.VC80.DebugCRT.mui\8.0.50727.762_en_1fc8b3b9a1e18e3b\Microsoft.VC80.DebugCRT.mui.DLL. 
       INFO: Did not find manifest for culture en. 
      INFO: End assembly probing. 
    INFO: Resolving reference for ProcessorArchitecture x86. 
     INFO: Resolving reference for culture en-US. 
      INFO: Applying Binding Policy. 
       INFO: No publisher policy found. 
       INFO: No binding policy redirect found. 
      INFO: Begin assembly probing. 
       INFO: Did not find the assembly in WinSxS. 
       INFO: Attempt to probe manifest at C:\Windows\assembly\GAC_32\Microsoft.VC80.DebugCRT.mui\8.0.50727.762_en-US_1fc8b3b9a1e18e3b\Microsoft.VC80.DebugCRT.mui.DLL. 
       INFO: Did not find manifest for culture en-US. 
      INFO: End assembly probing. 
     INFO: Resolving reference for culture en. 
      INFO: Applying Binding Policy. 
       INFO: No publisher policy found. 
       INFO: No binding policy redirect found. 
      INFO: Begin assembly probing. 
       INFO: Did not find the assembly in WinSxS. 
       INFO: Attempt to probe manifest at C:\Windows\assembly\GAC_32\Microsoft.VC80.DebugCRT.mui\8.0.50727.762_en_1fc8b3b9a1e18e3b\Microsoft.VC80.DebugCRT.mui.DLL. 
       INFO: Did not find manifest for culture en. 
      INFO: End assembly probing. 
INFO: Resolving reference Microsoft.VC80.DebugCRT,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="8.0.50608.0". 
    INFO: Resolving reference for ProcessorArchitecture WOW64. 
     INFO: Resolving reference for culture Neutral. 
      INFO: Applying Binding Policy. 
       INFO: No publisher policy found. 
       INFO: No binding policy redirect found. 
      INFO: Begin assembly probing. 
       INFO: Did not find the assembly in WinSxS. 
       INFO: Attempt to probe manifest at C:\Windows\assembly\GAC_32\Microsoft.VC80.DebugCRT\8.0.50608.0__1fc8b3b9a1e18e3b\Microsoft.VC80.DebugCRT.DLL. 
       INFO: Did not find manifest for culture Neutral. 
      INFO: End assembly probing. 
    INFO: Resolving reference for ProcessorArchitecture x86. 
     INFO: Resolving reference for culture Neutral. 
      INFO: Applying Binding Policy. 
       INFO: Publisher Policy redirected assembly version. 
       INFO: Post policy assembly identity is Microsoft.VC80.DebugCRT,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="8.0.50727.762". 
      INFO: Begin assembly probing. 
       INFO: Attempt to probe manifest at C:\Windows\WinSxS\manifests\x86_microsoft.vc80.debugcrt_1fc8b3b9a1e18e3b_8.0.50727.762_none_24c8a196583ff03b.manifest. 
       INFO: Manifest found at C:\Windows\WinSxS\manifests\x86_microsoft.vc80.debugcrt_1fc8b3b9a1e18e3b_8.0.50727.762_none_24c8a196583ff03b.manifest. 
      INFO: End assembly probing. 
INFO: Resolving reference Microsoft.VC80.DebugCRT.mui,language="*",processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="8.0.50727.762". 
    INFO: Resolving reference for ProcessorArchitecture WOW64. 
     INFO: Resolving reference for culture en-US. 
      INFO: Applying Binding Policy. 
       INFO: No publisher policy found. 
       INFO: No binding policy redirect found. 
      INFO: Begin assembly probing. 
       INFO: Did not find the assembly in WinSxS. 
       INFO: Attempt to probe manifest at C:\Windows\assembly\GAC_32\Microsoft.VC80.DebugCRT.mui\8.0.50727.762_en-US_1fc8b3b9a1e18e3b\Microsoft.VC80.DebugCRT.mui.DLL. 
       INFO: Did not find manifest for culture en-US. 
      INFO: End assembly probing. 
     INFO: Resolving reference for culture en. 
      INFO: Applying Binding Policy. 
       INFO: No publisher policy found. 
       INFO: No binding policy redirect found. 
      INFO: Begin assembly probing. 
       INFO: Did not find the assembly in WinSxS. 
       INFO: Attempt to probe manifest at C:\Windows\assembly\GAC_32\Microsoft.VC80.DebugCRT.mui\8.0.50727.762_en_1fc8b3b9a1e18e3b\Microsoft.VC80.DebugCRT.mui.DLL. 
       INFO: Did not find manifest for culture en. 
      INFO: End assembly probing. 
    INFO: Resolving reference for ProcessorArchitecture x86. 
     INFO: Resolving reference for culture en-US. 
      INFO: Applying Binding Policy. 
       INFO: No publisher policy found. 
       INFO: No binding policy redirect found. 
      INFO: Begin assembly probing. 
       INFO: Did not find the assembly in WinSxS. 
       INFO: Attempt to probe manifest at C:\Windows\assembly\GAC_32\Microsoft.VC80.DebugCRT.mui\8.0.50727.762_en-US_1fc8b3b9a1e18e3b\Microsoft.VC80.DebugCRT.mui.DLL. 
       INFO: Did not find manifest for culture en-US. 
      INFO: End assembly probing. 
     INFO: Resolving reference for culture en. 
      INFO: Applying Binding Policy. 
       INFO: No publisher policy found. 
       INFO: No binding policy redirect found. 
      INFO: Begin assembly probing. 
       INFO: Did not find the assembly in WinSxS. 
       INFO: Attempt to probe manifest at C:\Windows\assembly\GAC_32\Microsoft.VC80.DebugCRT.mui\8.0.50727.762_en_1fc8b3b9a1e18e3b\Microsoft.VC80.DebugCRT.mui.DLL. 
       INFO: Did not find manifest for culture en. 
      INFO: End assembly probing. 
INFO: Resolving reference Microsoft.VC80.DebugCRT,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="8.0.50727.6195". 
    INFO: Resolving reference for ProcessorArchitecture WOW64. 
     INFO: Resolving reference for culture Neutral. 
      INFO: Applying Binding Policy. 
       INFO: No publisher policy found. 
       INFO: No binding policy redirect found. 
      INFO: Begin assembly probing. 
       INFO: Did not find the assembly in WinSxS. 
       INFO: Attempt to probe manifest at C:\Windows\assembly\GAC_32\Microsoft.VC80.DebugCRT\8.0.50727.6195__1fc8b3b9a1e18e3b\Microsoft.VC80.DebugCRT.DLL. 
       INFO: Did not find manifest for culture Neutral. 
      INFO: End assembly probing. 
    INFO: Resolving reference for ProcessorArchitecture x86. 
     INFO: Resolving reference for culture Neutral. 
      INFO: Applying Binding Policy. 
       INFO: No binding policy redirect found. 
      INFO: Begin assembly probing. 
       INFO: Did not find the assembly in WinSxS. 
       INFO: Attempt to probe manifest at C:\Windows\assembly\GAC_32\Microsoft.VC80.DebugCRT\8.0.50727.6195__1fc8b3b9a1e18e3b\Microsoft.VC80.DebugCRT.DLL. 
       INFO: Attempt to probe manifest at u:\ESM\ESM_Layer\debug\Microsoft.VC80.DebugCRT.DLL. 
       INFO: Attempt to probe manifest at u:\ESM\ESM_Layer\debug\Microsoft.VC80.DebugCRT.MANIFEST. 
       INFO: Attempt to probe manifest at u:\ESM\ESM_Layer\debug\Microsoft.VC80.DebugCRT\Microsoft.VC80.DebugCRT.DLL. 
       INFO: Attempt to probe manifest at u:\ESM\ESM_Layer\debug\Microsoft.VC80.DebugCRT\Microsoft.VC80.DebugCRT.MANIFEST. 
       INFO: Did not find manifest for culture Neutral. 
      INFO: End assembly probing. 
    ERROR: Cannot resolve reference Microsoft.VC80.DebugCRT,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="8.0.50727.6195". 
ERROR: Activation Context generation failed. 
End Activation Context Generation. 

尋找在C:\ Program Files文件(x86)的\微軟的Visual Studio 8 \ VC \ REDIST \ Debug_NonRedist \ X86 \ Microsoft.VC80.DebugCRT,清單文件中有載:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?> 
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"> 
    <noInheritable></noInheritable> 
    <assemblyIdentity type="win32" name="Microsoft.VC80.DebugCRT" version="8.0.50727.762" processorArchitecture="x86" publicKeyToken="1fc8b3b9a1e18e3b"></assemblyIdentity> 
    <file name="msvcr80d.dll" hash="9062fecdbc9ab7df4d66e81b37e9cecdee037430" hashalg="SHA1"><asmv2:hash xmlns:asmv2="urn:schemas-microsoft-com:asm.v2" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#"><dsig:Transforms><dsig:Transform Algorithm="urn:schemas-microsoft-com:HashTransforms.Identity"></dsig:Transform></dsig:Transforms><dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"></dsig:DigestMethod><dsig:DigestValue>g5HUX4P7M3mkZuWgfND7EdkmVgs=</dsig:DigestValue></asmv2:hash></file> 
    <file name="msvcp80d.dll" hash="cf233a4bb28335cd6b4f62b5947d119faefa5bcb" hashalg="SHA1"><asmv2:hash xmlns:asmv2="urn:schemas-microsoft-com:asm.v2" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#"><dsig:Transforms><dsig:Transform Algorithm="urn:schemas-microsoft-com:HashTransforms.Identity"></dsig:Transform></dsig:Transforms><dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"></dsig:DigestMethod><dsig:DigestValue>lGYgPP6K9l5G0HBKTJ/Rlj2Vybg=</dsig:DigestValue></asmv2:hash></file> 
    <file name="msvcm80d.dll" hash="47021cd154192d51aad190daed426bf47156fa40" hashalg="SHA1"><asmv2:hash xmlns:asmv2="urn:schemas-microsoft-com:asm.v2" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#"><dsig:Transforms><dsig:Transform Algorithm="urn:schemas-microsoft-com:HashTransforms.Identity"></dsig:Transform></dsig:Transforms><dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"></dsig:DigestMethod><dsig:DigestValue>1fLI6D1TNH6Hwc1D/toIuhn/R+4=</dsig:DigestValue></asmv2:hash></file> 
</assembly> 

如果我去爲我的應用程序調試(輸出)的目錄,有它包含一個文件(ESM_Win32_App.exe.embed.manifest) :

<?xml version="1.0" encoding="UTF-8" standalone="yes"?> 
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"> 
    <dependency> 
    <dependentAssembly> 
     <assemblyIdentity type="win32" name="Microsoft.VC80.DebugCRT" version="8.0.50727.762" processorArchitecture="x86" publicKeyToken="1fc8b3b9a1e18e3b"></assemblyIdentity> 
    </dependentAssembly> 
    </dependency> 
    <dependency> 
    <dependentAssembly> 
     <assemblyIdentity type="win32" name="Microsoft.VC80.DebugCRT" version="8.0.50608.0" processorArchitecture="x86" publicKeyToken="1fc8b3b9a1e18e3b"></assemblyIdentity> 
    </dependentAssembly> 
    </dependency> 
    <dependency> 
    <dependentAssembly> 
     <assemblyIdentity type="win32" name="Microsoft.VC80.DebugCRT" version="8.0.50727.6195" processorArchitecture="x86" publicKeyToken="1fc8b3b9a1e18e3b"></assemblyIdentity> 
    </dependentAssembly> 
    </dependency> 
</assembly> 

我的C:\ WINDOWS \ winsxs文件目錄包含:

x86_microsoft.vc80.crt_1fc8b3b9a1e18e3b_8.0.50727.1833_none_d08b763a442c70c2 x86_microsoft.vc80.crt_1fc8b3b9a1e18e3b_8.0.50727.4027_none_d08a21a2442db2dc x86_microsoft.vc80.crt_1fc8b3b9a1e18e3b_8.0.50727 .4053_none_d08d7da0442a985d x86_microsoft.vc80.crt_1fc8b3b9a1e18e3b_8.0.50727.42_none_db5f52fb98cb24ad x86_microsoft.vc80.crt_1fc8b3b9a1e18e3b_8.0.50727.4940_none_d08cc06a442b34fc x86_microsoft.vc80.crt_1fc8b3b9a1e 18e3b_8.0.50727.762_none_10b2f55f9bffb8f8

x86_microsoft.vc80.debugcrt_1fc8b3b9a1e18e3b_8.0.50727.42_none_ef74ff32550b5bf0 x86_microsoft.vc80.debugcrt_1fc8b3b9a1e18e3b_8.0.50727.762_none_24c8a196583ff03b

似乎有這些DLL比調試的更多的運行時的味道,但是,我不甚至似乎沒有6195 DLL的運行時版本,更不用說調試了。

我的c:\ windows \ assembly \ gac_32不包含名爲Microsoft.VC80.DebugCRT的目錄,sxstrace的輸出似乎應該存在。

因此,我收集到一些調試DLL的集合沒有被找到,或者沒有安裝,但我不知道如何解決這個問題。一個人沒有這個問題,另一個沒有。沒有任何想法。 Visual Studio似乎安裝了.762,我原以爲會被升級到SP1和/或Vista更新......但我不知道他們會在哪裏,如果是這樣的話,我只是知道他們不是我認爲他們會成爲的地方。也許我需要安裝另一個更新?我也覺得令人費解的是,我的VS試圖使用.6195的DLL,但是它會從哪裏獲得這些信息 - 是否可以從其他DLL(即:可能來自其他組?)那裏獲得該信息,從而嘗試使用無論它認爲是最新的?

回答

2

已解決。安裝了以下更新(通過查看同事PC收集):KB2251481,KB2538218,KB2548826和KB973673。我不知道具體哪一個更新了DLL到所需的版本,但是這個組合做了訣竅。

2

這應該是對Jon自己的回答的評論,但我的帳戶是新的,並且我沒有足夠的信譽來添加評論或提出他的答案。我只是想確認他的答案工作:

謝謝喬恩。當我嘗試使用Visual Studio 2005在新安裝的Windows 7 64位上運行我的調試編譯時,我收到了有關Microsoft.VC80.DebugCRT的缺失版本8.0.50727.6195的相同錯誤。在您發表評論之後,我運行了Windows Update,並且問題解決了。這包括提到的所有4個更新,所以我不知道哪一個幫助。

+0

你可以發表評論一旦你有足夠的代表:-) – kleopatra 2013-03-07 11:59:30

1

其具有6195調試crt庫的KB2538218。謝謝你的信息!

相關問題