// Das Handle vom ICQ Chat Control ermitteln
function GetICQChatHandle(wndICQChat: HWND; DisplayName:
string): HWND;
const
ICQ_WIN_CLASS = '
__oxFrame.class__';
ICQ_MainWIN_Caption = '
ICQ';
var
wnd: HWND;
htmlDoc: IHTMLDocument2;
Params: OleVariant;
ClassName, captionName:
string;
begin
Result := 0;
SetLength(ClassName, 255);
SetLength(ClassName, GetClassName(wndICQChat, PChar(className), Length(className)));
SetLength(captionName, GetWindowTextLength(wndICQChat));
SetLength(captionName, GetWindowText(wndICQChat, PChar(captionName), Length(captionName) + 1));
if (className = ICQ_WIN_CLASS)
then // Falls ICQ Fenster Klasse übereinstimmt
if (captionName <> '
ICQ')
then // aber nicht das Hauptfenster
// Falls ein Displayname angegeben ist muss er übereinstimmen
if (DisplayName = '
')
or (Pos('
DisplayName', captionName) <> 0)
then
begin
wnd := FindWindowEx2(wndICQChat, ICQ_WIN_CLASS, 2);
if wnd <> 0
then
begin
// Internet Explorer_Server vom Chatfenster suchen
Result := FindWindowEx(wnd, 0, '
Internet Explorer_Server',
nil);
end;
end;
end;