FUNCTION GetProcessList LOCAL lnHandle, lsProcessEntry, lcCursName, lnOldArea LOCAL lcProcessName DECLARE INTEGER CreateToolhelp32Snapshot IN Win32Api INTEGER, INTEGER DECLARE INTEGER Process32First IN Win32Api INTEGER, STRING @ DECLARE INTEGER Process32Next IN Win32Api INTEGER, STRING @ DECLARE INTEGER CloseHandle IN Win32Api INTEGER lsProcessEntry = SPACE( ( 9 * 4) + 260) lcCursName = SYS(2015) lnOldArea = SELECT(0) SELECT 0 CREATE CURSOR (lcCursName) (Process C( 254)) lnHandle = CreateToolhelp32Snapshot( 2, 0) IF lnHandle > 0 lnProcess = Process32First( lnHandle, @lsProcessEntry) DO WHILE lnProcess > 0 lcProcessName = (STRTRAN((SUBSTR(lsProcessEntry, (9*4 + 1), 254)), CHR(0))) INSERT INTO (lcCursName) VALUES (lcProcessName) lsProcessEntry = SPACE( ( 9 * 4) + 260) lnProcess = Process32Next( lnHandle, @lsProcessEntry) ENDDO CloseHandle( lnHandle) ELSE *-- Some Error ENDIF SELECT (lnOldArea) RETURN lcCursName>Hi!!!