Now I'm trying to implement a Browser Helper Object on IE11. In the BHO I would like to hook WH_CALLWNDPROC to detect editing to Address bar but I have not got it. When I call the SetWindowsHookEx function in BHO SetSite, the BHO dll is injected to IE Child Process but is not injected to IE Parent Process. So I have not detected the editing.
Do you know how to get it?
MyBHO.cpp
STDMETHODIMP CHelloWorldBHO::SetSite(IUnknown* pUnkSite) { --- snip --- HWND hwnd; if (pUnkSite != NULL) { pUnkSite->QueryInterface(IID_IWebBrowser2, (void**)&m_spWebBrowser); if (SUCCEEDED(m_spWebBrowser->get_HWND((LONG_PTR*)&hwnd))) { m_hHook = SetWindowsHookEx(WH_CALLWNDPROC, BHO_AddressEditProcedure, hInstanceDll, GetWindowThreadProcessId(hwnd, NULL)); if (!m_hHook) { --- snip --- } } else { m_spWebBrowser.Release(); } return IObjectWithSiteImpl::SetSite(pUnkSite); }
Best Regards, Kamakuran