Къде бъркам
1 отговора
128 прегледа
Къде бъркам
Реших да си направя процедурка минимизираща всички прозорци. В първия вариант изглеждаше така:
procedure MinimizeAllWindows;
begin
EnumWindows(@MinimizeAll,0);
end;
където
function MinimizeAll(hwnd: hWnd; Param: integer): boolean; stdcall;
begin
CloseWindow(hwnd);
end;
Това, което се получи след тоя вариант естествено надмина и най-големите ми очаквания. Минимизираха се всички прозорци, ама действително всички - включително и тия които по традиция са си невидими. Постепенно функцията MinimizeAll се разшири и нещата сравнително се оправиха, но пак остават минимизиращи се прозорци, които не трябва да се минмизират. Като Application прозореца на Делфи приложенията. Въпроса е какво пропускам - тествам hwndto с IsVisible - true,GetTopWindow()>0, GWL_STYLE - WS_OVERLAPPEDWINDOW i едва тогава CloseWindow() обаче пак има пропуски.
procedure MinimizeAllWindows;
begin
EnumWindows(@MinimizeAll,0);
end;
където
function MinimizeAll(hwnd: hWnd; Param: integer): boolean; stdcall;
begin
CloseWindow(hwnd);
end;
Това, което се получи след тоя вариант естествено надмина и най-големите ми очаквания. Минимизираха се всички прозорци, ама действително всички - включително и тия които по традиция са си невидими. Постепенно функцията MinimizeAll се разшири и нещата сравнително се оправиха, но пак остават минимизиращи се прозорци, които не трябва да се минмизират. Като Application прозореца на Делфи приложенията. Въпроса е какво пропускам - тествам hwndto с IsVisible - true,GetTopWindow()>0, GWL_STYLE - WS_OVERLAPPEDWINDOW i едва тогава CloseWindow() обаче пак има пропуски.
Re: Къде бъркам
Hi,
Ne razbrah zasto tochno ti triabwa da min wsichki windows i koi tochno ne triabwa da se minimizirat, obache mogesh da izpolzwash GetWindowModuleFileName(hwnd,LPCSTR,UINT) i da filtrirash po imeto na exe-to a koeto prinadlegi prozoretza.
Ne razbrah zasto tochno ti triabwa da min wsichki windows i koi tochno ne triabwa da se minimizirat, obache mogesh da izpolzwash GetWindowModuleFileName(hwnd,LPCSTR,UINT) i da filtrirash po imeto na exe-to a koeto prinadlegi prozoretza.