void ExtendWebBrowser_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e) { if (add) { return; } add = true; FindWindow fw = new FindWindow(this.Handle, "Internet Explorer_Server"); IntPtr hIE = fw.FoundHandle; if (hIE.ToInt32() != 0) { oldWindow = (int)GetWindowLong(hIE.ToInt32(), GWL_WNDPROC); MyCallWindowProc = new CallWindowProcDelegate(WndProc); SetWindowLong(hIE.ToInt32(), GWL_WNDPROC, MyCallWindowProc); } }
protected static extern int SetWindowLong(int hwindow, int unindex, CallWindowProcDelegate lnewvalue);