When working with NT services your account must have the appropriate privileges described in the User Permissions topic.
To use Memory Validator with NT Services you need to link a small library to your application and call two functions in the library.
If at all possible, run your service on the same user account that you run the Memory Validator user interface.
The NT Service API is provided to enable Memory Validator to work with services.
The API works just as well with normal applications, and the same considerations outlined here also apply generally.
When the NT Service API is used, source code symbols are acquired in the stub and sent to the Memory Validator user interface.
When working with Memory Validator and services using the NT Service API you don't start the service using Memory Validator.
Instead, you start the service the way you normally start the service - e.g. with the service control manager.
The code that you have embedded into your service then contacts Memory Validator, which you should have running before starting the service.
Once you've exercised your service and stopped it, Memory Validator will show the usual leak information
See the section on monitoring a service for details.
We provide some Example Service Source Code to demonstrate how to embed the service code into your service.
If you have problems using Memory Validator with services, please contact us at support@softwareverify.com.