I am writing a windows service. This service runs another process I've developed through Process class methods, but I want to run this process on debug mode also, using breakpoints, for instance.
How can I do this?
I am writing a windows service. This service runs another process I've developed through Process class methods, but I want to run this process on debug mode also, using breakpoints, for instance.
How can I do this?
As well as the "attach process" mode, I've sometimes found it's handy to have an executable that you can run directly from Visual Studio (or just as a console app). I can't remember whether there were any difficulties in doing so, but I don't think there were... you just need to provide a normal entry point as well as the service entry point.
When debugging a service, DebugBreak() is very nice. You can even debug the startup of the service, which can be very hard to time if you try to attach the process.
In C#
#if DEBUG
System.Diagnostics.Debugger.Break();
#endif
In C++
#if DEBUG
System.Diagnostics.Debugger.Break();
#endif
Also see the question: how can I use debugbreak() in C#.