#97 MS runtimes 9.0.30729.1 instead of 21022.8

open
nobody
None
5
2012-12-21
2010-09-24
DV
No

Please use Microsoft run-time libraries 9.0.30729.1 instead of 9.0.21022.8 in latest versions of WinMerge (2.13.x or 2.14.x)!
I want to have portable WinMerge (which can work on different computers) but it depends on MS runtimes 9.0.21022.8. I could not find 9.0.21022.8 dll files, but WinMerge works with 9.0.30729.1 installed. So here is what I do
1) create a folder WinMerge\Microsoft.VC90.CRT with msvcp90.dll, msvcr90.dll and Microsoft.VC90.CRT.manifest
2) create a folder WinMerge\Microsoft.VC90.MFC with mfc90.dll, mfc90u.dll and Microsoft.VC90.MFC.manifest
3) patch binary files pcre.dll, ShellExtensionU.dll and WinMergeU.exe, replacing "9.0.21022.8" with "9.0.30729.1" because, as I wrote, I could not find the dll files with version 9.0.30729.1.
Now I have portable version of WinMerge which uses the dll files from the subfolders Microsoft.VC90.CRT and Microsoft.VC90.MFC when the required files are not installed in the system. But it was impossible until I patched pcre.dll, ShellExtensionU.dll and WinMergeU.exe.

Discussion

  • DV
    DV
    2010-09-24

    I meant, I could not find the dll files with version 9.0.21022.8, so I've used 9.0.30729.1 instead. And this version is newer, anyway.

     
  • DV
    DV
    2010-09-26

    The link seems to be the latest runtime which is 9.0.30729.1. Hmm, can it be that you are still using intial release of MS Visual C++ 2008 instead of 2008 SP1? As far as I know, 9.0.21022.8 corresponds to the initial release whereas 9.0.30729.1 corresponds to SP1.