Ответ 1
Используйте Start-Process
с аргументом -PassThru
следующим образом:
$app = Start-Process notepad -passthru
Wait-Process $app.Id
Мне нужно вызвать внешнее приложение (т.е. "Блокнот" ) а затем получить идентификатор процесса вызываемого приложения.
Get-Process Notepad = вернет все процессы Notepad
Я хочу сделать что-то вроде:
$objApp = & 'c:\Notepad.exe'
WHILE (get-process -ID $objApp.id | select -property Responding) {
Start-Sleep -s 10
Echo "STILL WAITING"
}
Echo "Done!!"
Используйте Start-Process
с аргументом -PassThru
следующим образом:
$app = Start-Process notepad -passthru
Wait-Process $app.Id
Более краткий:
# Starts Notepad and returns the ID
(Start-Process Notepad -passthru).ID