When you sequence Windows Live Messenger 5.1 and run the application on a Windows 7 system – the below error message can present itself in the Application log;
Activation context generation failed for “Q:\Windows Live Messenger\VFS\CSIDL_PROGRAM_FILES\Messenger\Msmsgs.exe”. Dependent Assembly Microsoft.Windows.Networking.RtcDll,language=”*”,
processorArchitecture=”X86“,
publicKeyToken=”6595b64144ccf1df“,type=”win32“,version=”5.2.1004.3” could not be found. Please use sxstrace.exe for detailed diagnosis.
The user only receives the below error message;
The client could not launch C:\Program Files (x86)\Messenger\Msmsgs.exe (rc 1F701939-000036B1
Reviewing whats captured – the below can be found under CSIDL_WINDOWS\WinSXS. If you compare the contents of the folder – you can spot a similar naming for one of the folders and the missing assembly.
Copy the DLL from the folder named RtcDLL to the working directory of Messenger (VFS\CSIDL_PROGRAM_FILES\Messenger)
Create a file named msmgs.exe.manifest in the working directory with the below content;
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"> <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3"> <security> <requestedPrivileges> <requestedExecutionLevel level="asInvoker" uiAccess="false"></requestedExecutionLevel> </requestedPrivileges> </security> </trustInfo> <dependency> <dependentAssembly> <assemblyIdentity type="<strong>win32</strong>" name="<strong>Microsoft.Windows.Networking.RtcDll</strong>" version="<strong>5.2.1004.3</strong>" processorArchitecture="<strong>x86</strong>"></assemblyIdentity> </dependentAssembly> </dependency> </assembly>
Create a second manifest named Microsoft.Windows.Networking.RtcDll.manifest (placed in the msmgs.exe working directory)
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"> <noInheritable /> <assemblyIdentity type="<strong>win32</strong>" name="<strong>Microsoft.Windows.Networking.RtcDll</strong>" publicKeyToken="<strong>6595b64144ccf1df</strong>" version="<strong>5.2.1004.3</strong>" processorArchitecture="<strong>x86</strong>" /> <file name="<strong>rtcdll.dll</strong>" /> </assembly>
Anything marked in bold is things that needs to correspond to the original error message or a file we want to reference.