Win32 API GetMessage从Awesomium在单独的线程

C++ Win32 API GetMessage From Awesomium In Separate Thread

本文关键字:单独 线程 Awesomium API GetMessage Win32      更新时间:2023-10-16

大家好,感谢大家花时间来看我的问题。

我正在制作一个c++程序,它使用Win32 API来创建初始程序窗口。然后我创建一个线程,创建一个子窗口,并将我的Awesomium WebView附加到这个子窗口。

我知道Awesomium不是线程安全的,但是文档说明它是线程安全的,它允许你在一个备用线程中使用Awesomium,只要你在创建它的线程中使用它。

现在讨论问题。我有一个问题接收输入从这个线程回到WinProc。如果我试图在Awesomium中单击鼠标,这是父级的子窗口,那么我就不能再在屏幕上拖动主窗口或使用最小化/最大化/关闭按钮,也不实际点击Awesomium窗口内的任何东西都有任何效果。我做了很多研究,发现AttachThreadInput(),但这似乎没有帮助。

有没有人知道我如何发送/接收消息到/从这个线程到WinProc?

当前代码在这里:http://pastebin.com/i4kNHcch

您的问题可能与Awesomium不是线程安全无关。当主窗口在一个线程中,子窗口在另一个线程中时,窗口可能会死锁。父窗口和子窗口需要相互通信(在操作系统内部),它们不被设计为线程外通信。