var
I: Integer;
ShellWindow: IShellWindows;
IE: IWebbrowser2;
Doc: IHtmlDocument2;
TxtRange: IHtmlTxtRange;
S: string;
P: PChar;
begin
ShellWindow := CoShellWindows.Create;
for I := 0 to ShellWindow.Count-1 do
begin
IE := ShellWindow.Item(I) as IWebbrowser2;
if IE <> nil then
begin
GetMem(P, MaxByte+1);
GetClassName(IE.HWND, P, MaxByte);
if SameText(P, 'IEFrame') then
begin
Doc := IE.Document as IHtmlDocument2;
if Doc.Selection <> nil then
begin
TxtRange := Doc.Selection.CreateRange as IHtmlTxtRange;
S := TxtRange.Get_text;
SHowMessage(S);
end;
end;
FreeMem(P);
end;
end;
end;