Форум » FiveWin » GetTasks » Ответить

GetTasks

fill: На FW использую функцию GetTasks(или аналогичную) - под W2K(и выше) показывает не весь список задач. Ежели кто знает, подскажите плз!

Ответов - 2

gfilatov: Исходники этой функции выглядят следующим образом: #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().

fill: А как эту InitToolhelp32() использовать ?



полная версия страницы