Как получить PID процесса при запуске его из командной строки?

Возможно, мягкое удаляет? (т.е. устанавливает "удаленный" флаг на узле), можно очистить список позже, если Вы должны.

10
задан Mofi 31 May 2017 в 05:51
поделиться

3 ответа

Уммм, TaskList & TaskKill ?!

2
ответ дан 3 December 2019 в 19:33
поделиться

Я думаю, что вы не можете сделать это с помощью простых утилит командной строки, так как IE фактически порождает дочерние процессы для каждой вкладки, т.е. если IE еще не запущен, вы получите один родительский процесс IE и дочерний процесс для вкладки, и если IE уже запущен, вы просто получите один дочерний процесс.

Будет даже довольно сложно, когда вы напишете свой собственный инструмент, чтобы убить IE, потому что, когда вы убиваете дочерний процесс (вкладка), IE автоматически восстанавливает эту вкладку.

См. Также этот связанный вопрос: Как сделать получить процесс только что созданного окна IE8? (хотя хорошего ответа там нет).

0
ответ дан 3 December 2019 в 19:33
поделиться

вы можете использовать vbscript, вот пример создания блокнота с последующим завершением его работы с помощью его pid

strComputer = "."
Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set objStartup = objWMIService.Get("Win32_ProcessStartup")
Set objConfig = objStartup.SpawnInstance_
Set objProcess = GetObject("winmgmts:root\cimv2:Win32_Process")
errReturn = objProcess.Create("notepad.exe", null, objConfig, PID)
If errReturn = 0 Then
    WScript.Echo "Process ID is: " & PID
End If 

WScript.Echo "Ready to kill process: " & PID & "? [Y|y]"
Do While Not WScript.StdIn.AtEndOfLine
   strInput = strInput & WScript.StdIn.Read(1)
Loop
If LCase(strInput) = "y" Then
    WScript.Echo "Select * from Win32_Process Where ProcessId = '" & PID & "'"
    Set colProcessList = objWMIService.ExecQuery("Select * from Win32_Process Where ProcessId = '" & PID & "'")
    For Each objProcess in colProcessList
        objProcess.Terminate()
    Next
End If 

, сохранения как myscript.vbs и в командной строке

c:\test> cscript /nologo myscript.vbs
3
ответ дан 3 December 2019 в 19:33
поделиться
Другие вопросы по тегам:

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