Можно ли получить "Имя пути к изображению" csrss.exe, который является процессом SYSTEM? - PullRequest
1 голос
/ 09 апреля 2011

Системный процесс Windows (в Windows 7 для этого примера) "csrss.exe" запускается как системный процесс, и когда я собираюсь получить (программно, конечно) список процессов с pid, командной строкой и именем пути к изображению Я не получаю значений для командной строки или имени пути к изображению, потому что Windows не позволит вам получить эту информацию для процесса SYSTEM (я полагаю).

Есть ли способ получить имя пути к изображению из процесса SYSTEM? Windows на самом деле мешает вам сделать это? Есть ли обходной путь?

Обновление: вызов функции ReadProcessMemory ()

[http://msdn.microsoft.com/en-us/library/aa915312.aspx]

1 Ответ

1 голос
/ 15 апреля 2011

Простой способ (намного более простой, чем ReadProcessMemory, который также возможен, если вы знаете, где искать) сделать это с помощью CreateToolhelp32Snapshot , на этой странице MSDN вы увидите дополнительные ссылки;

TH32CS_SNAPPROCESS 0x00000002

Включает все процессы в системе в снимке. Перечислить процессы см. Process32First .

Обратите внимание, что вы можете использовать QueryFullProcessImageName функция для получить полное имя исполняемый образ для 32- и 64-битные процессы из 32-битных процесс.

szExeFile Имя исполняемого файла файл для процесса. Чтобы получить полный путь к исполняемому файлу, вызов Module32First функция и проверка szExePath член MODULEENTRY32 структура, которая вернулся. Однако если звонящий процесс 32-битный процесс, вы должны вызовите QueryFullProcessImageName функция для получения полного пути исполняемый файл для 64-битной процесс.

Довольно просто.

...