有没有一种简单直接的方法来检查UAC是否在windows中是enabled/disabled?

Is there an easy and direct way to to check whether UAC is enabled/disabled in windows?

我正在使用以下命令获取启用状态:

REG QUERY HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\System\ /v EnableLUA

如果启用了 UAC,上述命令的输出如下:

HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\System
    EnableLUA    REG_DWORD    0x1

并且在禁用 UAC 的情况下输出仍然为:

HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\System
    EnableLUA    REG_DWORD    0x0

区别是0x00x1

为了检查服务的相似状态,我正在使用: (get-service service-name).status 命令。

它只给我输出一个字符串:Stopped/Running/Disabled

正在寻找了解 UAC 状态的类似方法。

也许你的意思是这样的?

$uac = Get-ItemPropertyValue -Path 'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System' -Name 'EnableLUA' -ErrorAction SilentlyContinue
if ($null -eq $uac) { 'NotConfigured' }
elseif ($uac -eq 0) { 'Disabled' }
else { 'Enabled' }