Автор | Сообщение |
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 24.10.05 17:26. Заголовок: GetTasks
На FW использую функцию GetTasks(или аналогичную) - под W2K(и выше) показывает не весь список задач. Ежели кто знает, подскажите плз!
|
|
|
Ответов - 2
[только новые]
|
|
|
| модератор
|
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 24.10.05 19:44. Заголовок: Re:
Исходники этой функции выглядят следующим образом: #include "FiveWin.ch" #define GHW_HWNDFIRST 0 #define GHW_HWNDNEXT 2 #define GWW_HINSTANCE -6 //----------------------------------------------------------------------------// function GetTasks() local hWnd := GetWindow( GetActiveWindow(), GHW_HWNDFIRST ) local aTasks := {} local cTask while hWnd != 0 #ifdef __CLIPPER__ cTask = GetModuleFileName( GetWindowWord( hWnd, GWW_HINSTANCE ) ) #else // cTask = GetModuleFileName( GetWindowLong( hWnd, GWW_HINSTANCE ) ) cTask = GetWindowText( hWnd ) // The above does now work :-( #endif if AScan( aTasks, cTask ) == 0 AAdd( aTasks, cTask ) endif hWnd = GetWindow( hWnd, GHW_HWNDNEXT ) end return aTasks Такой алгоритм нормально работает под Win9x/ME, но для получения всех запущенных задач и СЕРВИСОВ под WinNT/200/XP нужно использовать фукцию InitToolhelp32().
|
|
|
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 25.10.05 11:06. Заголовок: Re:
А как эту InitToolhelp32() использовать ?
|
|
|
|