Firebreath를 사용하여 창없는 플러그인을 개발 중이므로 추가 처리를 위해 특정 메시지를 잡기 위해 할 수 있지만 나머지 메시지는 사라집니다. "나는 생각한다.Internet Explorer_Server (IE9)의 Windows 메시지 처리
나는 메시지 루프 훅이 코드가 있습니다
bool myPlugin::onWindowAttached(FB::AttachedEvent *evt, FB::PluginWindow* pluginwin)
{
FB::PluginWindowlessWin* win = dynamic_cast<FB::PluginWindowlessWin*>(pluginwin);
FBLOG_INFO("", win->getHWND()); //getHWND returns the HWND of the Internet Explorer_Server window (get by using Spy++)
SubclassWindow(win->getHWND(), (WNDPROC)&myPlugin::WndProc);
return true;
}
을 그리고 이것은 처리 기능입니다 : 내가 가지고 있기 때문에
IE9에서 예상대로이 작동LRESULT CALLBACK myPlugin::WndProc(HWND hWindow, UINT msg, WPARAM wParam, LPARAM lParam)
{
switch (msg) {
case (WM_ERASEBKGND):
return 1;
}
return DefWindowProc(hWindow, msg, wParam, lParam);
}
(나는이 일을 해요 이미지를 다시 칠하는 동안 문제가 발생 함), 클릭 메시지는 처리되지 않으며 다른 메시지도 처리되지 않습니다. 버튼이 내 플러그인과 동일한 페이지에 있으면 클릭 할 수 없습니다.
저는 IE9를 단일 프로세스로 실행하고 있습니다.
도움을 주시면 감사하겠습니다.
감사합니다.
'SetWindowLongPtr'와'CallWindowProc'를 사용하여 문제가 해결되었지만 IE가 스스로 다시 칠하는 방식에 여전히 문제가 있습니다. –