Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.10.10;
Скачать: CL | DM;

Вниз

Проводник (explorer)   Найти похожие ветки 

 
HeKTO   (2004-09-01 09:04) [0]

Господа знатоки, подскажите - как закрыть одно (НЕ ВСЕ) из окон проводника (Например открытую папку Windows);
SendMessage(WND_окна,wm_close, 1, 1); - не работает для explorerА...
Есть, конечно идея (до ужаса глупая): получить координаты окна и програмно кликнуть по крестику :)- но это тупо!!!
Повторяю - нужно закрыть ОДНО окно, а не убить explorer


 
Зяц ©   (2004-09-01 18:28) [1]

Наверна, WM_SYSCOMMAND отослать с парамитром SC_CLOSE, я точно не знаю, но придполагаю.


 
BiN ©   (2004-09-02 11:47) [2]

Как один из вариантов:


var
 ShellObj:Variant;
 Wnds:Variant;
 L, i:Integer;
 IEObj:Variant;
begin
 Memo1.Lines.Clear;
 ShellObj:=CreateOleObject("Shell.Application");
 Wnds:=ShellObj.Windows;
 try
 L:=Wnds.Count;
 if L>0 then
 for i:=0 to L-1 do
 begin
   IEObj:=Wnds.Item(i);
   Memo1.Lines.Add(Format("%d. IE Window: %s  ::  %s", [i, IEObj.FullName, IEObj.LocationName, IEObj.LocationURL]));
   if i=0 then IEObj.Quit; // а вот и закрытие первого окна
   IEObj:=Null;
 end;
 finally
 Wnds:=Null;
 ShellObj:=Null;
 end;
end;


 
Дмитрий Ботвин   (2004-09-02 12:17) [3]

Прикольно, но последний вариант действительно работает!!!


 
lehich ©   (2004-09-03 09:28) [4]

а почему у меня:
[Error] Undeclared identifier: "CreateOleObject" ???


 
Anthonio   (2004-09-03 11:44) [5]

А если использовать PostMessage(Handle_окна, WM_CLOSE, 0, 0)



Страницы: 1 вся ветка

Текущий архив: 2004.10.10;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.022 c
6-1091613912
mrGrey_2
2004-08-04 14:05
2004.10.10
POST-запрос iexplorer-а


11-1073918606
miek
2004-01-12 17:43
2004.10.10
Бартову и Кладову: глюки в XHelpGen


3-1095073859
Miau
2004-09-13 15:10
2004.10.10
Excel и MSSQL2000


1-1096263093
_alex_
2004-09-27 09:31
2004.10.10
Delphi And Visual c++


1-1096135368
Charly22
2004-09-25 22:02
2004.10.10
MDI-интерфейс: проблемы с закрытием дочерних форм.