Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Список запущенных процессов [D7, XP]


MSVN ©   (2006-08-11 10:36:00) 

Добрый день!
Как например в ComboBox поместить список всех запущенных процессов (как в диспетчере задач)? спасибо!


novill   (2006-08-11 14:03:00) [1]

Есть и на дельфи

Но хотя бы гуглом надо уметь пользоваться.

Я вот нашел за 9 секунд. Из окторых  0,54 секунды думал гугл.


MSVN   (2006-08-11 13:36:00) [2]

видите ли я совсем чайник, а это душняк надо.
может на дельфи есть?


novill   (2006-08-11 11:24:00) [3]

Опять же МСДН, на дельфи думаю переведете...

#include
#include
#include "psapi.h"

void PrintProcessNameAndID( DWORD processID )
{
   char szProcessName[MAX_PATH] = "";

   // Get a handle to the process.

   HANDLE hProcess = OpenProcess( PROCESS_QUERY_INFORMATION |
                                  PROCESS_VM_READ,
                                  FALSE, processID );

   // Get the process name.

   if (NULL != hProcess )
   {
       HMODULE hMod;
       DWORD cbNeeded;

       if ( EnumProcessModules( hProcess, &hMod, sizeof(hMod),
            &cbNeeded) )
       {
           GetModuleBaseName( hProcess, hMod, szProcessName,
                              sizeof(szProcessName) );
       }
   }

   // Print the process name and identifier.

   printf( "%s  (PID: %u)\n", szProcessName, processID );

   CloseHandle( hProcess );
}

void main( )
{
   // Get the list of process identifiers.

   DWORD aProcesses[1024], cbNeeded, cProcesses;
   unsigned int i;

   if ( !EnumProcesses( aProcesses, sizeof(aProcesses), &cbNeeded ) )
       return;

   // Calculate how many process identifiers were returned.

   cProcesses = cbNeeded / sizeof(DWORD);

   // Print the name and process identifier for each process.

   for ( i = 0; i < cProcesses; i++ )
       PrintProcessNameAndID( aProcesses[i] );
}


MSVN   (2006-08-11 11:16:00) [4]

А примерчика нету?


novill   (2006-08-11 10:50:00) [5]

Как мне кажется, вас для начала заинтерсует winapi функция EnumProcesses...


Наверх

Титульная страница Поиск, карта сайта Написать письмо