minimalizacja

0

Od razu powiem, że szukałem podobnego tematu na forum i nie udało mi się go znaleźć (może źle szukałem - jeśli tak to możecie się po mnie przejechać, nie będę się gniewał :-) ).

Jak zminimalizować wszystkie uruchomione programy (włącznie z grami) nie znając ich nazw, captionów itp tak aby aktywny był mój program. Przede wszystkim chodzi mi o minimalizowanie gier.

Chodzi o to że gdy gram w Unreala i mój program dochodzi do głosu (staje się aktywny) to Unreal minimalizuje się do paska ale także wywala calę stosy komunikatów o błędach i muszę go od nowa włączać. Jeśli jestem w grze i wduszę alt-tab to unreal zminimalizuje się i nie wywala komunikatów czyli wynikałoby z tego że muszę jakoś wysłąc do niego sygnał aby się zminimalizował.

0

jedyne co mi przychodzi na myśl to programowo kliknąć (albo wywołać) "Pokaż pulpit"...

[Dopisane] ShellExecute(Handle, 'open', '"c:\Windows\System\Pokaż pulpit.scf"', nil, nil, SW_HIDE);

0

Kiedyś czytałem, co dzieje się, gdy klikniesz "Minimalizuj wszystkie okna" na pasku zadań. Jeśli mnie pamięć nie myli, to było to tak:

Wywołana zostaje funkcja EnumWindows, która (jak wiadomo) wywołuje n razy naszą funkcję typu EnumWindowsProc. W tej ostatniej dla każdego znalezionego okna odpalana jest ShowWindow z uchwytem aktualnego okna jako pierwszym parametrem oraz SW_MINIMIZE jako drugi parametr.

1 użytkowników online, w tym zalogowanych: 0, gości: 1