Как я могу определить родительский процесс cmd.exe

Иногда я оказываюсь в среде cmd.exe, которая самой была запущена другим cmd.exe или другим основанным на консоли приложением. Теперь, работая в такой среде, я хотел бы знать то, что происходит, если я ввожу exit, то есть, если окно cmd.exe исчезнет, или если оно возвращается к cmd.exe или приложению, которое вызвало его. Это, конечно, потому что иногда, поскольку я работаю в cmd.exe, который я забываю о том, как я назвал его.

Так, есть ли способ узнать родительский процесс (если это - правильный термин) cmd.exe в рамках другого cmd.exe?

7
задан 08.07.2013, 00:09

2 ответа

Можно использовать WMI для получения этой информации. Win32_Process класс содержит ParentProcessId

Таким образом (использующий PowerShell для выполнения команды WMI — другие инструменты WMI доступны):

gwmi Win32_Process -filter 'processid = 1234' | select ParentProcessId

даст идентификатор родительского процесса процесса 1234.

5
ответ дан 07.12.2019, 15:05

Это не из cmd.exe само, но Проводник Процесса имеет структурный вид, который показывает родительские процессы.

alt text

1
ответ дан 07.12.2019, 15:05

Теги

Похожие вопросы