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.