C#如何获取本进程中的窗口句柄?
RT
我需要在C#中调用C++写的DLL,DLL里面是封装了一些钩子函数,把拦截到的消息通过PostMessage的形式发送到由C#编写的程序对消息进行处理。
而PostMessage第一个参数就是窗口句柄。
以前用QT写界面可以直接用 界面.winId() 来获取当前界面的窗口句柄,这样就可以将消息投递到我的界面程序里面了。
网上找了很多,都是一些什么枚举窗口句柄来获取自己窗口句柄的。考虑到这样貌似比较麻烦而且效率也不太好。
所以请问一下,C#中如何获得本进程的窗口ID?
最好不要FindWindow之类的方法。这方法虽然可行但是一点都不可靠。假设我换了个窗口标题呢?或者进程中还有其他同名的进程呢?又或者是我的界面被隐藏or最小化呢?就找不到窗口句柄了。
因为对C#不是特别的了解,故前来该版块求大神解答~
------解决方案-------------------- this.Handle??