Closing Internet Explorer from Delphi (Views: 27)
Problem/Question/Abstract: My application has to close the IE. How can an application close the Internet Explorer or an Explorer window? Answer: The key is to post to the *right* window. Use the code below and it will close all instances of IE. program Sample; function CloseIEs(Wnd: HWnd; Form: TForm1): Boolean; export; stdcall; var sCap: array[0..255] of char; begin GetWindowText(Wnd, sCap, sizeof(sCap)); if pos('Microsoft Internet Explorer', sCap) > 0 then begin PostMessage(Wnd, WM_CLOSE, 0, 0); end else begin // check by class name! GetClassName(Wnd, sCap, sizeof(sCap)); if sCap = 'IEFrame' then PostMessage(Wnd, WM_CLOSE, 0, 0); end; CloseIEs := true; { next window, please } end; begin // close all hidden instances EnumWindows(@CloseIEs, 0); end. |