获取受UAC保护的文件夹列表

lig*_*tep -2 c++ windows uac

如何在启用UAC的情况下获取受保护的写文件夹列表?需要此信息的过程是使用管理员权限(安装程序)启动的.

Hel*_*ein 8

UAC不保护文件夹.UAC从用户的访问令牌中剥离管理员SID,将其缩减为常规受限("正常")用户.应用程序可以通过清单请求提升 - 然后整个流程使用管理令牌运行.

如果文件夹在启用UAC时无法写入,则意味着设置了NTFS安全性,以便普通用户无法写入,但管理员可以.作为补救措施,要么更改这些文件夹的权限,要么提升运行应用程序(或重新设计它以便写入普通用户可以访问的位置).

如果您的意思是UAC虚拟化(将写入尝试从系统区域重定向到用户配置文件):这里是我复制以下内容的功能的一个很好的描述:

  • 虚拟化仅适用于:
    • 32位交互式流程
    • 管理员可写文件/文件夹和注册表项
  • 禁用虚拟化:
    • 64位进程
    • 非交互式流程
    • 冒充的过程
    • 内核模式调用者
    • 具有requestedExecutionLevel的可执行文件