Если вы используете Start-Process, вы создаете новый дочерний процесс, в котором ваш сеанс powershell является родительским процессом. Если вы убьете родительский процесс PowerShell процесс , который запускает этот процесс, новый процесс будет потерян и продолжит работу. Однако он не выживет, если вы убьете родительское дерево процессов
Start-Process -FilePath notepad.exe
Powershell не может запустить новый независимый процесс за пределами своего дерева процессов. Однако это можно сделать в Windows, используя CreateProcess , и эта функциональность предоставляется через WMI. К счастью, это можно назвать с помощью powershell:
Invoke-WmiMethod -Class Win32_Process -Name Create -ArgumentList notepad.exe
Таким образом, новый процесс также будет продолжаться, если дерево процессов будет уничтожено, поскольку новый процесс не имеет сеанса powershell в качестве родительского, а имеет хост-процесс WMI.