DDEを使ってブラウザにクローズ命令を送ります。
(このプロシージャを作成するフォームには「DDEMan」をusesに追加する必要があります。)
SendMessageでWM_CLOSEを送っても終了します。
procedure Tform1.CloseBrowser(BrowserName: String); var DDE:TDDEClientConv; begin DDE := TDDEClientConv.Create(Self); try // コメントブロック内は最後のブラウザのインスタンスのみ終了させる場合に // 使用します。この場合、下側のwhile側をコメントアウトしてください。 { if DDE.SetLink(BrowserName,'WWW_Exit') then begin if DDE.PokeData('anything' ,'anything') then begin ShowMessage('Browser closed'); // この行は特に必要ありません end; end; } while DDE.SetLink(BrowserName,'WWW_Exit') do begin if DDE.PokeData('anything' ,'anything') then begin ShowMessage('Browser was closed'); // この行は特に必要ありません end; end; finally DDE.Free; end; end;
この関数をコールするには、プラウダがインターネットエクスプローラの場合には「IExplore」を Netscape Communicator 3.x の場合には「Netscape」、4.0 以降の場合には「NSShell」を引数に与えてやる必要があります。
procedure TForm1.Button1Click(Sender: TObject); begin CloseBrowser('IExplore'); end;
コメント (0件)