Link to home
Start Free TrialLog in
Avatar of PTRUSCOTT
PTRUSCOTT

asked on

Side-by-side configurarion error Cannot Run a Visual C++ 2008 Application on Windows 8

Dear Experts,
I am having the following troubles trying to run an application compiled under Visual C++ 2008 on a new Windows 8 laptop.  

I get a dialog box that says:

The application has failed to start because its side-by-side configuration is incorrect.  Please see the application event log or use the command line sxstrace.exe too for more detail.

I was advice to install the Visual C++ runtime distributable for this version of C++ and downloaded a version from this URL:

http://www.microsoft.com/en-us/download/details.aspx?id=2092

 However when I ran my application I got exactly the same error message.

I then went ahead and ran the sxstrace.exe tool I copy the log file output below.

Does anybody know how I can fix this error?  I am tempted to buy a full blown version of Visual C++ 2008 professional but that seems like an absurdly expensive way to settle the problem. Best Wishes, Phil

HERE'S THE OUTPUT FROM SXSTRACE.EXE:
=================
Begin Activation Context Generation.
Input Parameter:
Flags = 0
ProcessorArchitecture = AMD64
CultureFallBacks = en-US;en
ManifestPath = C:\Ais64\webide.exe
AssemblyDirectory = C:\Ais64\
Application Config File =
-----------------
INFO: Parsing Manifest File C:\Ais64\webide.exe.
INFO: Manifest Definition Identity is (null).
INFO: Reference: Microsoft.VC90.DebugCRT,processorArchitecture="amd64",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="9.0.21022.8"
INFO: Resolving reference Microsoft.VC90.DebugCRT,processorArchitecture="amd64",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="9.0.21022.8".
INFO: Resolving reference for ProcessorArchitecture amd64.
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_64\Microsoft.VC90.DebugCRT\9.0.21022.8__1fc8b3b9a1e18e3b\Microsoft.VC90.DebugCRT.DLL.
INFO: Attempt to probe manifest at C:\Ais64\Microsoft.VC90.DebugCRT.DLL.
INFO: Attempt to probe manifest at C:\Ais64\Microsoft.VC90.DebugCRT.MANIFEST.
INFO: Attempt to probe manifest at C:\Ais64\Microsoft.VC90.DebugCRT\Microsoft.VC90.DebugCRT.DLL.
INFO: Attempt to probe manifest at C:\Ais64\Microsoft.VC90.DebugCRT\Microsoft.VC90.DebugCRT.MANIFEST.
INFO: Did not find manifest for culture Neutral.
INFO: End assembly probing.
ERROR: Cannot resolve reference Microsoft.VC90.DebugCRT,processorArchitecture="amd64",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="9.0.21022.8".
ERROR: Activation Context generation failed.
End Activation Context Generation.
Avatar of AndyAinscow
AndyAinscow
Flag of Switzerland image

>>Cannot resolve reference Microsoft.VC90.DebugCRT,

This sounds like you are running a DEBUG version.  On your PC you can develop both DEBUG and RELEASE versions.  You can only distribute RELEASE versions to other PC's.

Build the app as a RELEASE build and try again.
Avatar of PTRUSCOTT
PTRUSCOTT

ASKER

Dear Andy,
I have just asked the authors to check this for me.

I don't have access to the original code.
Many thanks.
Phil
It might simply be that you need both versions of the runtime: x86 and x64.
Let me simplify the answers of Andy and Mc. If you have Visual Studio and load the project, you can change the project settings your own. Change it to Release mode as Andy says, and change to x86 or x64 as Mc says. I am scared if you can't do that.

Chnage to x86 it runs in every environment without any problem.
VS.JPG
>>I don't have access to the original code.

IF I am correct and the developers have distributed a DEBUG version then it makes me wonder a bit about their abilities.  (Or they could just have copied the wrong file by mistake).
In newer flavours of Windows the system tries to manage runtime versions (at least from VC and .NET). To do that, it holds different versions of the runtime "side by side". This reduces backward compatibility issues, because every application gets the runtime version it has been compiled with.

The error message tells you that you don't have the proper runtime version on your system.

The SXSTRACE output
INFO: Reference: Microsoft.VC90.DebugCRT,processorArchitecture="amd64",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="9.0.21022.8"
.
.
.
ERROR: Cannot resolve reference Microsoft.VC90.DebugCRT,processorArchitecture="amd64",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="9.0.21022.8".

Open in new window

tells you that you need the Visual C/C++ runtime version 9.0.21022 (maybe "or later") for amd64 (= 64bit runtime), which is not on your system. Visual C/C++ V9 refers to Visual Studio 2008.

Try to install this x64 runtime and probably its x86 counterpart. Don't forget to rerun Windows Update afterwards to get the subsequent security fixes.
BTW no one has mentioned that so far that a quick fix would be to Install the Free Express edition of Visual C++ 2008.
Quick fix was mentioned to and fro ;)
vcredist in x86 AND x64.
@MxKnife - see the first comment re the error message.  The DEBUG libraries are nothing to do with vcredist, that only distributes the RELEASE libraries.
Right click on the application- properties- compatibility - select vista or 7 from the list. Click ok and then execute the application.


If you are able to execute the application then its compatibility issue.


Ded9
Dear Ded9,
I implemented your possible solutions (both running as Vista and Windows 7) and got the same error message.

Dear Frankhelk,
I installed both files you have links to but the result was the same.

I have already installed the Express version of Visual Studio 2008 and the result was the same.

I am hoping to get a  release version sent by the software authors.

Best Wishes,

Phil
Out of curiosity did you select and install the 64bit debug version of runtime? I dont remember whether these are selected/installed by default.
Hmmm - what version ist the runtime you've installed ? (Control panel -> Software) ?

If it's not  9.0.21022, then try to get the correct version from the software authors.
Dear Ambience,
Is there some efficient way to search and find the "debug version" of the distributable?  I tried Googling this

Visual C++ 2008 debug redistributable

Without much success.

Dear Frankhelk,
How do I look up the version of the distributable on the runtime package?  I can look up the version of my copy of Visual C++ express edition.  This version number is 9.0.21022.8 RTM.

I don't see an obvious way to look up the version number of something that is not a program.
Best Wishes,
Phil
Dear Experts,
After installing the Release version of the program it still failed with the same error.  Below is a copy of the parse trace file that comes out of sxstrace.exe.
Phil

=================
Begin Activation Context Generation.
Input Parameter:
Flags = 0
ProcessorArchitecture = AMD64
CultureFallBacks = en-US;en
ManifestPath = C:\Ais64\webide.exe
AssemblyDirectory = C:\Ais64\
Application Config File =
-----------------
INFO: Parsing Manifest File C:\Ais64\webide.exe.
INFO: Manifest Definition Identity is (null).
INFO: Reference: Microsoft.VC90.CRT,processorArchitecture="amd64",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="9.0.21022.8"
INFO: Reference: Microsoft.VC90.DebugCRT,processorArchitecture="amd64",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="9.0.21022.8"
INFO: Resolving reference Microsoft.VC90.CRT,processorArchitecture="amd64",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="9.0.21022.8".
INFO: Resolving reference for ProcessorArchitecture amd64.
INFO: Resolving reference for culture Neutral.
INFO: Applying Binding Policy.
INFO: Find publisher policy at C:\Windows\WinSxS\manifests\amd64_policy.9.0.microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.30729.6871_none_acd48825e1d7842d.manifest
INFO: Publisher Policy redirected assembly version.
INFO: Post policy assembly identity is Microsoft.VC90.CRT,processorArchitecture="amd64",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="9.0.30729.6871".
INFO: Begin assembly probing.
INFO: Attempt to probe manifest at C:\Windows\WinSxS\manifests\amd64_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.30729.6871_none_08e717a5a83adddf.manifest.
INFO: Manifest found at C:\Windows\WinSxS\manifests\amd64_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.30729.6871_none_08e717a5a83adddf.manifest.
INFO: End assembly probing.
INFO: Resolving reference Microsoft.VC90.CRT.mui,language="*",processorArchitecture="amd64",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="9.0.30729.6871".
INFO: Resolving reference for ProcessorArchitecture amd64.
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_64\Microsoft.VC90.CRT.mui\9.0.30729.6871_en-US_1fc8b3b9a1e18e3b\Microsoft.VC90.CRT.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_64\Microsoft.VC90.CRT.mui\9.0.30729.6871_en_1fc8b3b9a1e18e3b\Microsoft.VC90.CRT.mui.DLL.
INFO: Did not find manifest for culture en.
INFO: End assembly probing.
INFO: Resolving reference Microsoft.VC90.DebugCRT,processorArchitecture="amd64",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="9.0.21022.8".
INFO: Resolving reference for ProcessorArchitecture amd64.
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_64\Microsoft.VC90.DebugCRT\9.0.21022.8__1fc8b3b9a1e18e3b\Microsoft.VC90.DebugCRT.DLL.
INFO: Attempt to probe manifest at C:\Ais64\Microsoft.VC90.DebugCRT.DLL.
INFO: Attempt to probe manifest at C:\Ais64\Microsoft.VC90.DebugCRT.MANIFEST.
INFO: Attempt to probe manifest at C:\Ais64\Microsoft.VC90.DebugCRT\Microsoft.VC90.DebugCRT.DLL.
INFO: Attempt to probe manifest at C:\Ais64\Microsoft.VC90.DebugCRT\Microsoft.VC90.DebugCRT.MANIFEST.
INFO: Did not find manifest for culture Neutral.
INFO: End assembly probing.
ERROR: Cannot resolve reference Microsoft.VC90.DebugCRT,processorArchitecture="amd64",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="9.0.21022.8".
ERROR: Activation Context generation failed.
End Activation Context Generation.

=================
Begin Activation Context Generation.
Input Parameter:
Flags = 0
ProcessorArchitecture = AMD64
CultureFallBacks = en-US;en
ManifestPath = C:\Windows\system32\wuauclt.exe
AssemblyDirectory = C:\Windows\system32\
Application Config File =
-----------------
INFO: Parsing Manifest File C:\Windows\system32\wuauclt.exe.
INFO: Manifest Definition Identity is Microsoft.Windows.windowsupdate.wuauclt,processorArchitecture="amd64",type="win32",version="6.0.0.0".
INFO: Reference: Microsoft.Windows.Common-Controls,language="*",processorArchitecture="amd64",publicKeyToken="6595b64144ccf1df",type="win32",version="6.0.0.0"
INFO: Resolving reference Microsoft.Windows.Common-Controls,language="*",processorArchitecture="amd64",publicKeyToken="6595b64144ccf1df",type="win32",version="6.0.0.0".
INFO: Resolving reference for ProcessorArchitecture amd64.
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_64\Microsoft.Windows.Common-Controls\6.0.0.0_en-US_6595b64144ccf1df\Microsoft.Windows.Common-Controls.DLL.
INFO: Attempt to probe manifest at C:\Windows\system32\en-US\Microsoft.Windows.Common-Controls.DLL.
INFO: Attempt to probe manifest at C:\Windows\system32\en-US\Microsoft.Windows.Common-Controls.MANIFEST.
INFO: Attempt to probe manifest at C:\Windows\system32\en-US\Microsoft.Windows.Common-Controls\Microsoft.Windows.Common-Controls.DLL.
INFO: Attempt to probe manifest at C:\Windows\system32\en-US\Microsoft.Windows.Common-Controls\Microsoft.Windows.Common-Controls.MANIFEST.
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_64\Microsoft.Windows.Common-Controls\6.0.0.0_en_6595b64144ccf1df\Microsoft.Windows.Common-Controls.DLL.
INFO: Attempt to probe manifest at C:\Windows\system32\en\Microsoft.Windows.Common-Controls.DLL.
INFO: Attempt to probe manifest at C:\Windows\system32\en\Microsoft.Windows.Common-Controls.MANIFEST.
INFO: Attempt to probe manifest at C:\Windows\system32\en\Microsoft.Windows.Common-Controls\Microsoft.Windows.Common-Controls.DLL.
INFO: Attempt to probe manifest at C:\Windows\system32\en\Microsoft.Windows.Common-Controls\Microsoft.Windows.Common-Controls.MANIFEST.
INFO: Did not find manifest for culture en.
INFO: End assembly probing.
INFO: Resolving reference for culture Neutral.
INFO: Applying Binding Policy.
INFO: Auto Servicing Policy redirected assembly version.
INFO: Post policy assembly identity is Microsoft.Windows.Common-Controls,processorArchitecture="amd64",publicKeyToken="6595b64144ccf1df",type="win32",version="6.0.9200.16384".
INFO: Begin assembly probing.
INFO: Attempt to probe manifest at C:\Windows\WinSxS\manifests\amd64_microsoft.windows.common-controls_6595b64144ccf1df_6.0.9200.16384_none_418c2a697189c07f.manifest.
INFO: Manifest found at C:\Windows\WinSxS\manifests\amd64_microsoft.windows.common-controls_6595b64144ccf1df_6.0.9200.16384_none_418c2a697189c07f.manifest.
INFO: End assembly probing.
INFO: Resolving reference Microsoft.Windows.Common-Controls.mui,language="*",processorArchitecture="amd64",publicKeyToken="6595b64144ccf1df",type="win32",version="6.0.9200.16384".
INFO: Resolving reference for ProcessorArchitecture amd64.
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_64\Microsoft.Windows.Common-Controls.mui\6.0.9200.16384_en-US_6595b64144ccf1df\Microsoft.Windows.Common-Controls.mui.DLL.
INFO: Attempt to probe manifest at C:\Windows\system32\en-US\Microsoft.Windows.Common-Controls.mui.DLL.
INFO: Attempt to probe manifest at C:\Windows\system32\en-US\Microsoft.Windows.Common-Controls.mui.MANIFEST.
INFO: Attempt to probe manifest at C:\Windows\system32\en-US\Microsoft.Windows.Common-Controls.mui\Microsoft.Windows.Common-Controls.mui.DLL.
INFO: Attempt to probe manifest at C:\Windows\system32\en-US\Microsoft.Windows.Common-Controls.mui\Microsoft.Windows.Common-Controls.mui.MANIFEST.
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_64\Microsoft.Windows.Common-Controls.mui\6.0.9200.16384_en_6595b64144ccf1df\Microsoft.Windows.Common-Controls.mui.DLL.
INFO: Attempt to probe manifest at C:\Windows\system32\en\Microsoft.Windows.Common-Controls.mui.DLL.
INFO: Attempt to probe manifest at C:\Windows\system32\en\Microsoft.Windows.Common-Controls.mui.MANIFEST.
INFO: Attempt to probe manifest at C:\Windows\system32\en\Microsoft.Windows.Common-Controls.mui\Microsoft.Windows.Common-Controls.mui.DLL.
INFO: Attempt to probe manifest at C:\Windows\system32\en\Microsoft.Windows.Common-Controls.mui\Microsoft.Windows.Common-Controls.mui.MANIFEST.
INFO: Did not find manifest for culture en.
INFO: End assembly probing.
INFO: Parsing Manifest File C:\Windows\WinSxS\manifests\amd64_microsoft.windows.common-controls_6595b64144ccf1df_6.0.9200.16384_none_418c2a697189c07f.manifest.
INFO: Manifest Definition Identity is Microsoft.Windows.Common-Controls,processorArchitecture="amd64",publicKeyToken="6595b64144ccf1df",type="win32",version="6.0.9200.16384".
INFO: Reference: Microsoft.Windows.Common-Controls.Resources,language="*",processorArchitecture="amd64",publicKeyToken="6595b64144ccf1df",type="win32",version="6.0.0.0"
INFO: Resolving reference Microsoft.Windows.Common-Controls.Resources,language="*",processorArchitecture="amd64",publicKeyToken="6595b64144ccf1df",type="win32",version="6.0.0.0".
INFO: Resolving reference for ProcessorArchitecture amd64.
INFO: Resolving reference for culture en-US.
INFO: Applying Binding Policy.
INFO: Auto Servicing Policy redirected assembly version.
INFO: Post policy assembly identity is Microsoft.Windows.Common-Controls.Resources,language="en-US",processorArchitecture="amd64",publicKeyToken="6595b64144ccf1df",type="win32",version="6.0.9200.16384".
INFO: Begin assembly probing.
INFO: Attempt to probe manifest at C:\Windows\WinSxS\manifests\amd64_microsoft.windows.c..-controls.resources_6595b64144ccf1df_6.0.9200.16384_en-us_5797734e9e2ff26c.manifest.
INFO: Manifest found at C:\Windows\WinSxS\manifests\amd64_microsoft.windows.c..-controls.resources_6595b64144ccf1df_6.0.9200.16384_en-us_5797734e9e2ff26c.manifest.
INFO: End assembly probing.
INFO: Parsing Manifest File C:\Windows\WinSxS\manifests\amd64_microsoft.windows.c..-controls.resources_6595b64144ccf1df_6.0.9200.16384_en-us_5797734e9e2ff26c.manifest.
INFO: Manifest Definition Identity is Microsoft.Windows.Common-Controls.Resources,language="en-us",processorArchitecture="amd64",publicKeyToken="6595b64144ccf1df",type="win32",version="6.0.9200.16384".
INFO: Activation Context generation succeeded.
End Activation Context Generation.

=================
Begin Activation Context Generation.
Input Parameter:
Flags = 0
ProcessorArchitecture = AMD64
CultureFallBacks = en-US;en
ManifestPath = C:\Windows\SoftwareDistribution\Download\Install\AM_Delta_Patch_1.143.381.0.exe
AssemblyDirectory = C:\Windows\SoftwareDistribution\Download\Install\
Application Config File =
-----------------
INFO: Parsing Manifest File C:\Windows\SoftwareDistribution\Download\Install\AM_Delta_Patch_1.143.381.0.exe.
INFO: Manifest Definition Identity is (null).
INFO: Activation Context generation succeeded.
End Activation Context Generation.

=================
Begin Activation Context Generation.
Input Parameter:
Flags = 0
ProcessorArchitecture = AMD64
CultureFallBacks = en-US;en
ManifestPath = C:\Windows\system32\MpSigStub.exe
AssemblyDirectory = C:\Windows\system32\
Application Config File =
-----------------
INFO: Parsing Manifest File C:\Windows\system32\MpSigStub.exe.
INFO: Manifest Definition Identity is (null).
INFO: Activation Context generation succeeded.
End Activation Context Generation.
>>Cannot resolve reference Microsoft.VC90.DebugCRT,processorArchitecture="amd64",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="9.0.21022.8".

For some reason it seems it is still attempting to use a DEBUG version library.  (The isn't a redistributable for the DEBUG libraries as such because you are allowed to distribute them - licence, as well as they are larger and slower than the RELEASE versions because of all the code in them to assist in debugging).

You could follow the suggestion by ambience to install the free express version (which does include the DEBUG libraries as part of it) and see if that helps.
ASKER CERTIFIED SOLUTION
Avatar of PTRUSCOTT
PTRUSCOTT

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
None of the comments helped me to solve the problem.  It was necessary to purchase a full licensed copy of C++.