Howdy, Tim > Thanks for the explanation Garrett. I have some further questions/comments below. Tim > Tim >So when Regis wrote: Tim > "I checked manifest file in java.exe, CRT version is 8.0.50608.0, Tim > but CRT dlls shipped with our build is 8.00.50727.42" Tim > Tim > that implies our build script did not package the same version of DLL as the linker found and linked against, right?
(I talked about this in the reply to Regis' response.) It sounds like the binding policy isn't installed. GS > VC++ looks at the most recent version of the C++ GS > libraries on the developer's system, and embeds that version in with GS > the executable. Tim > Hmm, Regis says the manifest called for 8.0.50608.0 but the version we shipped was 8.00.50727.42 -- implying the version we packaged *was* a more recent version found on the developer's system. ---[Snip]--- Tim > We are putting the crt's into the package at the moment. I agree carrying around our own copy is not what we 'really really' want but... The zip file that Regis points to does not contain the CRT runtimes. He was unpacking a snapshot zip file, not using an installer. Tim > ...this option requires we have a more prominent readme or equivalent that says "You need to run this installer before our code will work", which also is not what we 'really really' want either. Tim > On balance I think I'd prefer to take the crt with me. If we remove the Manifests then I assume we lose some important benefits too though. The *intended* method is to use the VC runtime .msm merge module when you build your .MSI installer. If you are going to have the .zip file snapshots, you may want to include the installer .EXE of the runtime redistributable in there. If you'd like (and our timezones are somewhat compatible), I can give you a phone call and we can discuss this more. Garrett