Как я могу определить, был ли повышенный или нет определенный процесс. Этот процесс отличается от процесса, в котором работает мой код. Я хотел бы иметь возможность сделать это с помощью PowerShell или C#.Как определить, повышается ли какой-либо конкретный процесс с помощью dotnet или powershell
ответ
Пожалуйста, попробуйте этот ответ: https://stackoverflow.com/a/4497572/717732
Это UacHelper
будут нужны некоторые незначительные изменения. Например, IsProcessElevated
использует OpenProcessToken
на CurrentProcess - вам нужно будет изменить функцию IsProcessElevated
на функцию и сделать параметр Process
, чтобы вы могли проверить любой, а не только текущий.
В общем, этот класс делает все, что вам нужно. Он проверяет свойства безопасности, назначенные процессу. Я думаю, что код говорит сам по себе.
BTW. Если вы считаете, что код подходит для ваших нужд, пожалуйста, отметьте свой вопрос как «дубликат» этого вопроса - он поможет другим найти этот код.
Может быть, это может помочь
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/
- 1. Как определить, работает ли конкретный процесс приложением WPF или нет?
- 2. Как определить программный процесс, является ли конкретный процесс 32-разрядным или 64-битным
- 3. Как определить, работает ли какой-либо конкретный процесс
- 4. Как определить, отлаживается ли процесс
- 5. Определить, установлен ли конкретный шрифт
- 6. Как определить, приостановлен ли текущий процесс?
- 7. Как определить, умер ли длительный процесс?
- 8. Как определить, выполняется ли текущий процесс GDB?
- 9. процесс Стопа «Проводник» полностью с помощью PowerShell
- 10. Определите конкретный процесс
- 11. Как определить выходную папку ДНУ/DotNet Опубликовать
- 12. get-wmiobject, чтобы убить процесс с помощью powershell
- 13. vimscript: Как определить, существует ли конкретный файл
- 14. Как определить, является ли сценарий точечным источником или загружен как часть модуля с помощью powershell v2 +?
- 15. Как определить, имеет ли процесс графический интерфейс или нет?
- 16. Как определить, запущен ли процесс через пакетный файл или файл сценария?
- 17. Как определить, установлена ли dotnet и VSTORuntime в WIX Bootstrapper
- 18. Определить версию Bitlocker с помощью PowerShell
- 19. Как определить, обрабатывается ли процесс process.stdout узла?
- 20. Как определить, завершился ли целевой процесс?
- 21. Как определить, установлен ли процесс как служба
- 22. Как закрыть конкретный процесс с помощью определенного документа в C#
- 23. Как проверить, работает ли процесс или нет с помощью C++
- 24. Скрипт Powershell как конкретный пользователь
- 25. Определить, находятся ли пользователи в Active Directory с помощью PowerShell
- 26. Как определить процесс реагирования?
- 27. Как определить, закончился ли сеанс Azure Powershell?
- 28. C++, Как определить, работает ли Windows-процесс?
- 29. Как определить, завершил ли процесс выполнение
- 30. Определите, приостановлен ли процесс
выше сценарий его большой, и работает, если в процессе вы работаете его от не повышен, но если сам процесс повышается его Безразлично» т работы. – klumsy
Вы правы, я сам это обнаружил, пытаясь проверить код. Существуют дополнительные свойства, которые невозможно прочитать, если вы тестируете неэквивалентный сеанс. Например, свойство Modules процесса равно null (его проще проверить вместо этого для Path и handle). –