VLD V2.5 is installed under the default folder : C:\Program Files (x86)\Visual Leak\Detector.
There are 3 exe files : M.exe, Q.exe, and t.exe. These are located in the working directory C:\M folder.
And there are many dll files for the above 3 exe files. Some are located in C:\M folder and others are located in C:\M\D folder.
They are closely working by one calling the other, and so on.
In M folder, there is a dbghelp.dll (V6.1.72.2). This could be a privately customized dbghelp.dll file.
No Microsoft.DTfW.DHL.manifest files exists in M folder.
I built 2 dll files: F.dll and S.dll.
F.dll is located in C:\M\D folder and S.dll is located in C:\M\S folder.
These 2 dll files work ok with all 3 M.exe, Q.exe, and t.exe.
Next, I rebuilt F.dll and S.dll with vld.
[1] Q.exe and t.exe run ok with vld.
[2] M.exe runs ok with F.dll but fails with S.dll.
=> I don't know why. Maybe dbghelp.dll collision?
=> How can I make M run with S.dll?
=> After lots of trials, I copied 3 vld files (vld_x64.dll, vld.ini, and Microsoft.DTfW.DHL.manifest) from the default VLD folder to S folder. And finally M.exe works ok.
[3] Whenever any problem like [2] happens,
- is it the only way to copy the 3 vld files directly under the problematic modules?
HR
[P.S] After more trials, I realized even copy vld files to S folder didn't make M.exe start up. So. M.exe seems always to fail to start up when S.dll is built with vld.