2

実行中のプロセスを探し、そこにない場合は起動する powershell スクリプトを作成するのに助けが必要です。現在、私が持っている VB スクリプトはプロセスを探して起動しますが、Windows 7 のユーザーの簡易切り替えにより、そのプロセスは任意のユーザー セッションで実行でき、スクリプトは現在のユーザー セッションで実行されていると見なされます。どんな助けや指針も大歓迎です!

4

1 に答える 1

3

比較的単純なコード:

if (
    Get-WmiObject -Class Win32_Process -Filter "Name = 'explorer.exe'" | 
        where { 
            $_.GetOwner().User -eq $env:USERNAME 
        }
    ) { 
    "explorer is running for $env:username" 
}

これにより、現在のユーザー以外のユーザーに対して実行されているこのプロセスは無視されます。explorer.exe を実際のプロセスに置き換え、ニーズに合わせてロジックを変更するだけです。

于 2013-01-15T19:16:42.220 に答える