RSS
TWebBrowserでProxyをセットして接続する

これを使うとこのアプリケーション中のTWebBrowserの中でだけ一時的に串を変更することができます。ほかのソフトのTWebBrowserには影響が出ないようです。この動作を実現するにはURLMonで定義されているUrlMkSetSessionOptionというものを利用します。

まずusesにWinInet, URLMonを追加し、以下の手続きを定義してください

procedure TForm1.SetProxy(const ProxyHostAndPort: String);
var
  info: TInternetProxyInfo;
begin
  info.dwAccessType := INTERNET_OPEN_TYPE_PROXY;
  info.lpszProxy := PChar(ProxyHostAndPort);
  info.lpszProxyBypass:= nil;
  UrlMkSetSessionOption(INTERNET_OPTION_PROXY,@info,sizeof(info),0);
end;
procedure TForm1.SetDirectConnection;
var
  info: TInternetProxyInfo;
begin
  info.dwAccessType := INTERNET_OPEN_TYPE_DIRECT;
  info.lpszProxy := nil;
  info.lpszProxyBypass:= nil;
  UrlMkSetSessionOption(INTERNET_OPTION_PROXY,@info,sizeof(info),0);
end;

まず、SetProxyが串をセットする手続きです。ProxyHostAndPortでは123.456.789:8080のような文字列で串を指定します。串の接続はTWebBrowserのリロード後に開始されます。

元に戻すときはSetDirectConnectionを呼び出してください。