views:

60

answers:

3

Our C# application needs to launch a thirdpart (from our customer) executable (VC++) to do something. it worked fine in XP and windows 7 but it crashed in Window Embedded Standard 7. Following is the log from System event log.

Activation context generation failed for "C:\Ande\thirdParty\cogs2.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.

Anybody knows where to find the Assembly Microsoft.VC90.CRT and how can I make it availble in our Win7 Embedded machine? We have built our Win7 Embedded from template, from answer file and from customized selections. All have the same crash. We are using .Net 3.5 sp1 and VS 2008.

thanks,

A: 

Maybe this can help:

The dependent side-by-side assembly can be installed as either a shared assembly or as a private assembly. For example, Visual Studio 2008 installs the CRT assembly as a shared side-by-side assembly which can be found in the directory %WINDIR%\WinSxS\x86_Microsoft.VC90.CRT_ when running Windows XP or in the directory %WINDIR%\winsxs\x86_microsoft.vc90.crt_ when running Windows Vista

Taken from http://msdn.microsoft.com/en-us/library/ms235342.aspx

Andrea Parodi
A: 

You can download the required package from MSDN. http://www.microsoft.com/downloads/en/details.aspx?familyid=A5C84275-3B97-4AB7-A40D-3802B2AF5FC2&displaylang=en

Redistributable can be packaged into your application by following the steps mentioned at http://msdn.microsoft.com/en-us/library/ms235299.aspx

Sandeep Singh Rawat
A: 

If you're installing via an MSI package, you may wish to use the VC90 CRT merge module.

You can find these in C:\Program Files\Common Files\Merge Modules\ or C:\Program Files (x86)\Common Files\Merge Modules\

Kevin Pullin