gpt4 book ai didi

c++ - Win32 C++ 可以通过过程发送额外信息

转载 作者:太空狗 更新时间:2023-10-29 20:42:32 25 4
gpt4 key购买 nike

我一直在努力避免将任何窗口句柄存储为全局句柄。到目前为止,我一直很好。

我现在正在使用键盘 Hook 程序,并且我正在尝试找到(如果有的话)将我的主窗口句柄传递给它。

如果真的不能用简单的方式完成,我可以让主窗口句柄全局化。

LRESULT CALLBACK KeyboardProc(int code, WPARAM wParam, LPARAM lParam);

有没有一种方法可以在其中一个参数中包含句柄?

谢谢。

最佳答案

看来您正在寻找一种将状态对象传递给 KeyboardProc 的方法。您可以按照说明进行操作 here , 使用 thunk 对象。这样,KeyboardProc 可以是您的 C++ 类的非静态成员方法,没有全局变量。这有点hack,但是非常方便。 ATL 库(atlstdthunk.h 中的CStdCallThunk)使用了类似的技术。因为certain issues with DEP (数据执行保护),你最好使用 thunk 的 ATL 实现。

关于c++ - Win32 C++ 可以通过过程发送额外信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18324296/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com