如何检测特定进程是否被提升。此过程与我的代码运行的过程不同。我希望能够使用 PowerShell 或 C# 来执行此操作。
问问题
520 次
2 回答
1
也许这可以帮助
Get-Process |
Add-Member -Name Elevated -MemberType ScriptProperty -Value {if ($this.Name -in @('Idle','System')) {$null} else {-not $this.Path -and -not $this.Handle} } -PassThru |
Format-Table Name,Elevated
来自http://www.powershellmagazine.com/2013/03/29/pstip-detecting-if-a-certain-process-is-elevated/
于 2013-12-05T09:18:53.943 回答
0
请试试这个答案:https ://stackoverflow.com/a/4497572/717732
这UacHelper
将需要一些小的改动。就像,在 CurrentProcess 上IsProcessElevated
使用OpenProcessToken
- 您将需要更改IsProcessElevated
fo a 函数并制作Process
a 参数,以便您可以检查任何参数,而不仅仅是当前参数。
一般来说,这个类可以完成你需要做的所有事情。它检查分配给进程的安全属性。我认为代码本身会说话。
顺便提一句。如果您认为该代码可以满足您的需求,请将您的问题标记为该问题的“重复” - 这将有助于其他人找到该代码。
于 2013-12-04T22:31:53.283 回答