C# - Capturing Windows Messages from a specific application

前端 未结 2 2041
醉酒成梦
醉酒成梦 2020-12-29 15:43

I\'m writing a C# application which needs to intercept Window Messages that another applications is sending out. The company who wrote the application I\'m

2条回答
  •  刺人心
    刺人心 (楼主)
    2020-12-29 16:46

    I think the problem is with your P/Invoke definition for RegisterWindowMessage(). pinvoke.net suggests using the following:

    [DllImport("user32.dll", SetLastError=true, CharSet=CharSet.Auto)]
    static extern uint RegisterWindowMessage(string lpString);
    

    Using uint as the return value instead of IntPtr should make the difference. Typically you want to use IntPtr when the return value is a handle (such as an HWND or HANDLE), but when the return value can be directly converted to a C# type it is better to use that type.

提交回复
热议问题