When working with NT services your account must have the appropriate privileges described in the User Permissions topic.
To use Thread 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 Thread Validator user interface.
The NT Service API is provided to enable Thread 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 Thread Validator user interface.
When working with Thread Validator and services using the NT Service API you don't start the service using Thread 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 Thread Validator, which you should have running before starting the service.
Once you've exercised your service and stopped it, Thread Validator will show the usual thread data.
We provide some Example Service Source Code to demonstrate how to embed the service code into your service.
If you have problems using Thread Validator with services, please contact us at support@softwareverify.com.