tags:

views:

78

answers:

4

I have .NET service and I need to debug it.

I want it to stop when it reaches some place in code and start the debugger. Can anyone provide some code sample?

UPDATE

Simply adding

Debugger.Launch(); 

does not work for Windows service.

+2  A: 

Add a Debugger.Launch(); to the place in your code where you want to start debugging.

klausbyskov
Oh thanks! I was just trying to find it in Albahari book!
Captain Comic
+1  A: 

Try using Debugger.Break(), as per this answer.

Nathan Baulch
A: 

Here are the steps for that:

1) Stop & uninstall the running service 2) Rename or remove the release version of the service 2) Create a Debug build of the service 3) Install this debug build of service 4) Start the service 5) Open the service solution from Visual studio 6) Select Tools->Attach process 7) In the process list you will see the running service, Attach it 8) Set breakpoints wherever required

prashaNET
This does not address my question.
Captain Comic
A: 
  1. Add the following code to the place where you want to stop service.
  2. Run Service.
  3. Attach debugger
  4. Add f to watch, change it value to false
  5. Continue debugging

    bool f=true; while(f) {//<- Add breakpoint here

    }

zabulus