This project has moved and is read-only. For the latest updates, please go here.

No leaks detected from service program

Apr 4, 2013 at 2:08 PM
Hi,

I've been using VLD for some time now and with very good results and no problems.
I'm trying to use it with a Windows service program and I'm experiencing strange issues.
Basically, no leaks are reported despite adding big test leaks into wmain or other functions.

The only CRT debugging faeure I use explicitly is this:
_CrtSetReportMode(_CRT_ASSERT, _CRTDBG_MODE_DEBUG);
When I run my service under debugger, I see VLD messages like
Visual Leak Detector Version 2.2.3 installed.
I have also enabled VLD in a DLL that my service uses and VLD is reporting leaks originating
from that DLL:
Visual Leak Detector detected 10 memory leaks (600 bytes).
Largest number used: 3963156 bytes.
Total allocations: 4231756 bytes.
Visual Leak Detector is now exiting.
So, VLD is definitely enabled and crunching the memory, but why it is not reporting leaks from .exe module of the service?

What could be interfering with VLD, so it does not report anything?
Anyone could give me any hints how to diagnose such situation, where to look at?
Apr 17, 2014 at 6:15 PM
I know the topic is year old, but to help others struggling to make VLD work in a Windows service.
Here is the solution: place your vld.ini in the %windir%\system32 directory. This is the place VLD loads an INI file from.
Also you'd better use an absolute path in the ReportFile parameter.