Internet explorer 띄우기
usesComObj;
procedureTForm1.Button1Click(Sender: TObject);
var
IE: OleVariant;
begin
try
IE:=CreateOleObject('Internetexplorer.Application');
// 위치, 크기
IE.Left:=0;
IE.Top :=0;
IE.Width :=500;
IE.Height:=400;
// IE 윈도우 상태
IE.Toolbar :=False;
IE.Statusbar:=False;
IE.Menubar :=False;
// 띄우기
IE.Visible:=True;
SetForegroundWindow(IE.HWND);
IE.Navigate('인터넷주소URL');
finally
IE:=Unassigned;
end;
end;
IE를 띄우는데 먼저 띄운 IE가 있다면 그 IE를 최상위로 올리고,
만약 먼저 띄운 IE가 꺼지고 없다면 새로 띄우려면 아래처럼 하면 됨.
uses
ComObj;
const
NOT_EXISTS = 0;
EXISTS =1;
var
IE_HWND: HWND;
// 윈도우를 모조리 뒤져서 먼저 띄운 IE가 있는지 체크
functionEnumWindowsProc(hwnd: HWND; varlParam: DWORD): Boolean; stdcall;
begin
// 먼저 띄운 IE가 아니라면 없다고 하고 계속 뒤짐
if hwnd<>IE_HWND then begin
lParam:=NOT_EXISTS;
Result:=True;
end
// 먼저 띄운 IE가 있다면 있다고 하고 뒤지기 중지
else begin
lParam:=EXISTS;
Result:=False;
end;
end;
procedureTForm1.Button1Click(Sender: TObject);
var
IE : OleVariant;
IE_Exists: DWORD;
begin
// IE를 띄운적이 있으면
ifIE_HWND<>0then begin
// 그 IE가 아직 떠있는지 검사해서
EnumWindows(@EnumWindowsProc, DWORD(@IE_Exists));
// 떠있다면 최상위로 올려줌
ifIE_Exists=EXISTS then begin
SetForegroundWindow(IE_HWND);
Exit;
end;
end;
try
IE:=CreateOleObject('Internetexplorer.Application');
// 위치, 크기
IE.Left:=0;
IE.Top :=0;
IE.Width :=500;
IE.Height:=400;
// IE 윈도우 상태
IE.Toolbar :=False;
IE.Statusbar:=False;
IE.Menubar :=False;
// 띄우기
IE.Visible:=True;
SetForegroundWindow(IE.HWND);
// 띄우는 IE의 핸들을 저장
IE_HWND:=IE.HWND;
IE.Navigate('인터넷URL');
finally
IE:=Unassigned;
end;
end;
'Delphi Tip > 인터넷' 카테고리의 다른 글
Delphi에서 Chrome Browser 사용하기 (0) | 2021.12.05 |
---|---|
IE 웹브라우저(Webbrowser) 화면을 이미지로 저장하기 (0) | 2021.12.02 |
Capture element click in Internet Explorer (0) | 2021.11.30 |
delphi로 IE 컨트롤 (0) | 2021.11.29 |
IE 현재 열려있는 주소값 읽어오기 (0) | 2021.11.25 |
댓글