title: How to hook api calls in another application
body: <p>I am trying to hook the ExtTextOut and DrawTextExt GDI method calls of another application.</p>
  
  <p>I know that I need to Use GetProcAddress to find the address of those methods in gdi32.dll, and overwrite the address in the process I want to hook with the address of my function.  Then in my function I do what I need, then call the original function.</p>
  
  <p>I want to make this hook functionality available to .net applications, and apparently this is do-able by creating an 'intermediate' unmanaged dll that does the hooking, and is capable of firing a event on the .net side, so that the new function can bet written in the managed environment.  I'm just not sure how to implement this.  Does anyone have any code samples or links to information?</p>