![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
люди очень нужна помощь!!!!!!!!!!!! [D6, WinME, WinXP]
max001 © (2002-12-26 20:18:00)Скажите пожвлуйста как заррыть окно!
(и очень прошу покажите точный премер)
Спосибо!!!!!!!!!!!!!
Антипыч (2002-12-27 20:33:00) [1]А зечем условие останова? Эта процедура сама завершится, как только проверит все окна.
Ig0r (2002-12-27 13:42:00) [2]/-/-
interface
/-/-/
function EnumWindowsProc(var AHandle: HWND; lParam: Longint): Boolean;
//функция, определяемая программистом для получения хэндлов top-level окон
//как результата работы EnumWindows or EnumDesktopWindows
/-/-
implementation
/-/-
procedure TForm1.Button2Click(Sender: TObject);
var
lParam: Longint;
p : Pointer;
begin
lParam := 0;
p := @EnumWindowsProc;
EnumWindows(p, lParam); //получаем хэндлы всех окон
end;
function EnumWindowsProc(var AHandle: HWND; lParam: Integer): Boolean;
begin
Result := AHandle > 0; //условие останова (хэндл десктопа 0!)
form1.ListBox1.Items.Add(IntToStr(AHandle)); //заносим хэндлы в список, просто так, для наглядности :)
end;
procedure TForm1.Button3Click(Sender: TObject);
var
i: Integer;
begin
for i := 0 to ListBox1.Items.Count - 1 do
SendMessage(StrToInt(ListBox1.Items[i]), WM_CLOSE, 0, 0); //закрываем все окна! :)))
end;
bak (2002-12-27 12:19:00) [3]PostMessage(FindWindow(nil, PChar( IHateThisProg ), WM_CLOSE, 0, 0);
2Rouse_ © (26.12.02 22:08)
и не просто TerminateProcess(), так как при этом могут не выгрузиться длл.
Rouse_ (2002-12-26 22:08:00) [4]Вместо "Блокнот" подставить PChar(имя окна)
Примечание, не все закрываются на WM_QUIT оригиналы почемуто хотят WM_CLOSE, для таких лучше TerminateProcess()
Желаю успехов
max001 (2002-12-26 21:57:00) [5]Удалено модератором
Примечание: Offtopic
Shadow (2002-12-26 21:29:00) [6]Подводишь мышку к крестику (правый верхний угол у окна), жмешь на него, и, о чудо! окно закрывается!
max001 (2002-12-26 21:13:00) [7]Слушай а скажи пожалуйта song Как вобще открытые окна закрывать!
и покажи очень нужно!
зарание спосибо!
Song (2002-12-26 20:34:00) [8]Для другого будут другие параметры в FindWindow()
max001 (2002-12-26 20:27:00) [9]а это только на блокнот???
Song (2002-12-26 20:22:00) [10]SendMessage(FindWindow(nil,"Блокнот"),WM_CLOSE,0,0)