6

What I am trying to do is to monitor memory value changes at some specific addresses, like binding a callback func to the 'onChange' event.

One idea for now that I can think up is to use memory write breakpoint. So how to manipulate breakpoints programmatically in Visual C++?

Mickey Shine
  • 12,187
  • 25
  • 96
  • 148

4 Answers4

6

If you need to break into the debugger, use the DebugBreak function, if necessary under a #ifdef _DEBUG #endif block

Edward Clements
  • 5,040
  • 2
  • 21
  • 27
3

Microsoft do provide a breakpoint interface which can be used for this purpose, have a look at http://msdn.microsoft.com/en-us/library/vstudio/envdte.breakpoint.aspx and http://msdn.microsoft.com/en-us/library/envdte80.breakpoint2(v=vs.80).aspx

Saqlain
  • 17,490
  • 4
  • 27
  • 33
1

You can also place in your code:

__asm { int 3 }

If you are running under the VS debugger, that will invoke the breakpoint handler.

UPDATE: Actually it is the same than using the MSVC instrinsic __debugbreak (http://msdn.microsoft.com/en-us/library/f408b4et.aspx)

1

I've had great success with the hwbrk project.

ulatekh
  • 1,311
  • 1
  • 14
  • 19