unit Unit1;interfaceuses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.OleCtrls, SHDocVw, mshtml, ActiveX;type
  TForm1 = class(TForm)
    WebBrowser1: TWebBrowser;
    Button1: TButton;
    Button2: TButton;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;var
  Form1: TForm1;implementation{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);
begin
  WebBrowser1.Navigate('http://www.sogou.com');
end;procedure ThdProc(P:Pointer);stdcall;
var
  Doc:IHTMLDocument2;
  EditInput:HTMLInputElement;
begin
  OleInitialize(nil);
  with Form1 do
  begin
    Doc :=  WebBrowser1.Document as IHTMLDocument2;
    EditInput := Doc.all.item('query',0) as HTMLInputElement;
    EditInput.value := 'xxxxxxxxxxx';
  end;
  OleUninitialize;end;procedure TForm1.Button2Click(Sender: TObject);
var
  ID:Cardinal;
begin  CreateThread(nil,0,@ThdProc,nil,0,ID);
end;initialization
  CoInitializeEx(nil,COINIT_MULTITHREADED);
finalization
  CoUninitialize;
end.