![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как достать заголовки всех открытых окон Intenet Explorer? [D5, Win95/98]
Schummmi © (2002-02-09 08:11:00)Уважаемые Мастера!Как достать заголовки всех открытых окон Intenet Explorer? Спасибо!
Schummi (2002-02-24 08:06:00) [1]Спасибо тебе, [NIKEL], и спасибо всем! Попробую!
Serg001 (2002-02-23 18:35:00) [2]Да, класс окна IExplorer - IEFrame
[NIKEL] (2002-02-23 17:59:00) [3]>>Schummi
примерно так (я уже это писал здесь в форуме неоднократно)
крути цикл по всем окнам и смотри в их Класс name
if ((GetClassName(hwd,&buf,255) > 0) && (buf[0] == "I") && (buf[1] == "E") && (buf[6]== "e") //нашли IEFrame
{
... чё то делаем
}
Cobalt (2002-02-23 12:45:00) [4]Мой вариант (очень похож на [NIKEL] © (16.02.02 12:48))
С помощью получаешь хэндл процесса с именем IExplorer.exe (чтоб наверняка), и проходишься по его окнам (EnumProcessWindow или что-то в этом роде, точнее см хелп)
Schummi (2002-02-23 08:20:00) [5]А как это в названиях класса окна? Я не знаю!
[NIKEL] (2002-02-16 12:48:00) [6]или ищи в названиях класса окна у IE он по моему IEFrame называеться....
Anonymous (2002-02-16 10:10:00) [7]Q176792 HOWTO: Connect to a Running Instance of Internet Explorer
http://support.microsoft.com/support/kb/articles/Q176/7/92.asp
Schummmi (2002-02-16 09:34:00) [8]А что, если с помощью WInBoost"а пользователь, например я, убрал в строке заголовка Internet Explorer"а строку "Microsoft Internet Explorer"??? Тогда как быть?
rambo69 (2002-02-09 16:37:00) [9]procedure sbor;
var Wnd : hWnd;
buff: array [0..127] of char;
str:string;
begin
LIST1.CLEAR;
str:="Microsoft Internet Explorer";
Wnd := GetWindow(chatform.Handle, gw_HWndFirst);
while Wnd <> 0 do begin {Не показываем:}
if IsWindowVisible(Wnd) and {-Невидимые окна}
(GetWindow(Wnd, gw_Owner) = 0) and {-Дочернии окна}
(GetWindowText(Wnd, buff, sizeof(buff)) <> 0) {-Окна без заголовков}
then begin
GetWindowText(Wnd, buff, sizeof(buff));
if pos(str,StrPas(buff))>0
then list1.items.add(StrPas(buff));
end;
Wnd := GetWindow(Wnd, gw_hWndNext);
end;
end;
Schummi (2002-02-09 13:29:00) [10]Мне надо просто в TListBox получить список заголовков всех открытых окон Intenet Explorer.
Victor (2002-02-09 10:22:00) [11]Можно поподробней достать с какой целью, например чтобы достать заголовок Internet Explorer с целью закрытия надо писать
sendmessage(findwindow(nil,"заголовок окна которое надо достать"),wm_syscommand,sc_close,0);