ここでは、なぜそのように機能するのかを最初に説明します。おそらく、他の誰かがそれを使用して別の解決策をもたらすことができます。
WMIに基づくソリューションで回答を編集しました。
リモート セッションに入ると、次のようになります。
PS C:\Users\JPB> enter-PSSession -ComputerName 192.168.183.100 -Credential $cred
[192.168.183.100]: PS C:\Users\jpb\Documents>
wsmprovhost.exe
以下に示すように、サーバー上にプロセスを作成します。

このリモート セッションで単にプロセスを開始すると、次のようになります。
[192.168.183.100]: PS C:\Users\jpb\Documents> Start-Process calc.exe
新しいプロセスは、wsmprovhost.exe
以下に示すようにの子です。

リモート セッションを停止するwsmprovhost.exe
と、子プロセスが消えてしまいます。
説明は、wsmprovhost.exe
これによって開始されたすべてのプロセスが同じジョブに属しているということです。

デフォルトでは、一方でこのジョブは、JOB_OBJECT_LIMIT_BREAKAWAY_OK
フラグを使用してプロセスを開始することを許可しない制限フラグをサポートしていません。他方では、このジョブは、ジョブに関連付けられたすべてのプロセスを終了させる制限フラグをCREATE_BREAKAWAY_FROM_JOB
サポートしています。JOB_OBJECT_LIMIT_KILL_ON_JOB_CLOSE
仕事は閉鎖されています。
をサポートするジョブをサポートするように WinRM を構成するソリューションが存在する可能性がありますJOB_OBJECT_LIMIT_BREAKAWAY_OK
。
編集:
そこで、Microsoft のドキュメントを読んで、WinRM を介して別の仕事でプログラムを開始するための文書化された技術的な方法を見つけました。デフォルトでは、ジョブに関連付けられたプロセスによって CreateProcess を使用して作成されたプロセスは、ジョブに関連付けられます。ただし、Win32_Process.Createを使用して作成されたプロセス はジョブに関連付けられません。
したがって、リモート セッションで次のような WMI を使用してプロセスを作成する場合:
PS C:\silogix> $ps = New-PSSession -ComputerName 192.168.183.100 -Credential $cred
PS C:\silogix> Enter-PSSession -Session $ps
[192.168.183.100]: PS C:\Users\jpb\Documents> Invoke-WmiMethod -path win32_process -name create -argumentlist "calc.exe"
__GENUS : 2
__CLASS : __PARAMETERS
__SUPERCLASS :
__DYNASTY : __PARAMETERS
__RELPATH :
__PROPERTY_COUNT : 2
__DERIVATION : {}
__SERVER :
__NAMESPACE :
__PATH :
ProcessId : 1236
ReturnValue : 0
[192.168.183.100]: PS C:\Users\jpb\Documents> exit
PS C:\silogix> Remove-PSSession $ps
リモート セッションを停止すると wsmprovhost.exe は消えますが、新しいプロセスは次のようにサーバーに残ります。

WMI で開始されたプロセスは、どのジョブにも属しません。フランス語で「Ce qu'il fallait démontrer」と言います。