Udostępnij przez


Wyliczenie procesu

Wszyscy użytkownicy mają dostęp do odczytu do listy procesów w systemie i istnieje wiele różnych funkcji, które wyliczają aktywne procesy. Funkcja, której należy użyć, będzie zależeć od czynników, takich jak wymagana obsługa platformy.

Następujące funkcje służą do wyliczania procesów.

Funkcja Opis
EnumProcesses Pobiera identyfikator procesu dla każdego obiektu procesu w systemie.
Process32First Pobiera informacje o pierwszym procesie napotkanym w migawki systemu.
Process32Dale Pobiera informacje o następnym procesie zarejestrowanym w migawki systemu.
WTSEnumerateProcesses Pobiera informacje o aktywnych procesach na określonym serwerze terminalu.

 

Funkcje toolhelp i EnumProcesses wyliczają cały proces. Aby wyświetlić listę procesów uruchomionych na określonym koncie użytkownika, użyj WTSEnumerateProcesses i filtruj identyfikator SID użytkownika. Identyfikator sesji można filtrować, aby ukryć procesy uruchomione w innych sesjach serwera terminali.

Procesy można również filtrować według konta użytkownika, niezależnie od funkcji wyliczania, wywołując OpenProcess, OpenProcessTokeni GetTokenInformation za pomocą TokenUser. Nie można jednak otworzyć procesu chronionego przez deskryptor zabezpieczeń, chyba że udzielono ci dostępu.