2009-12-02 6 views
0

내가 교류 # 호출에서 실행하는 PowerShell 스크립트가 실행 비동기 (예 .. Process.Start를 (powershell.exe를 file.ps1를))파워 쉘

notepad.exe filename 

이 그러나로, 스크립트 완료를 차단하는 것 완료 이벤트는 메모장 대화 상자가 닫힐 때까지 발생하지 않습니다.

나 notepad.exe를 시작하지만, 스크립트 실행이 완료를 할 수있는 방법이 있습니까. 어쩌면 내가 놓친 파워 쉘일지도 몰라. 가급적이면 그 줄이 비동기 일 때 file.ps1의 나머지 부분을 차단할 수있는 무언가가 될 것입니다.

답변

1

당신이 PowerShell을 2.0을 사용할 수있는 경우, 백그라운드 작업 (PsJob)에 대한 이동합니다.

PsJob 비동기 명령 또는 식을 실행하고 콘솔과 상호 작용없이 "배경". 명령 프롬프트가 즉시 반환되고 작업 결과를 편리하게 쿼리 할 수 ​​있습니다. 로컬 또는 원격 컴퓨터에서 백그라운드 작업을 실행할 수 있습니다.

또한

,이를 확인 :

Is it possible to call powershell cmdlets asynchronously?

+0

2.0로 전환 할 수 없습니다. 이는 프로덕션 환경을위한 것입니다. – maxfridbe

관련 문제