Why does the same source build a DLL with a different manifest when built on different machines?

EDN Admin

Well-known member
Joined
Aug 7, 2010
Messages
12,794
Location
In the Machine
When I build my project on a Windows 7 machine running VS 2005, the resulting DLL embeds this manifest:
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0 <br/>
<dependency><br/>
<dependentAssembly><br/>
<assemblyIdentity type="win32" name="Microsoft.VC80.CRT" version="8.0.50727.6195" processorArchitecture="x86" publicKeyToken="1fc8b3b9a1e18e3b </assemblyIdentity><br/>
</dependentAssembly><br/>
</dependency><br/>
<dependency><br/>
<dependentAssembly><br/>
<assemblyIdentity type="win32" name="Microsoft.VC80.MFC" version="8.0.50727.6195" processorArchitecture="x86" publicKeyToken="1fc8b3b9a1e18e3b </assemblyIdentity><br/>
</dependentAssembly><br/>
</dependency><br/>
</assembly>

But when I build it on a Windows Server 2003 machine (also running VS 2005) it embeds a different manifest:
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0 <br/>
<dependency><br/>
<dependentAssembly><br/>
<assemblyIdentity type="win32" name="Microsoft.VC80.CRT" version="8.0.50608.0" processorArchitecture="x86" publicKeyToken="1fc8b3b9a1e18e3b </assemblyIdentity><br/>
</dependentAssembly><br/>
</dependency><br/>
<dependency><br/>
<dependentAssembly><br/>
<assemblyIdentity type="win32" name="Microsoft.VC80.MFC" version="8.0.50608.0" processorArchitecture="x86" publicKeyToken="1fc8b3b9a1e18e3b </assemblyIdentity><br/>
</dependentAssembly><br/>
</dependency><br/>
</assembly>

The 8.0.50727.6195 Runtime DLLs are in the WinSxs directory on the Windows Server 2003 machine. How can I get it to use/embed them?


View the full article
 
Back
Top