我最近编写了一个 C++ 应用程序,它的功能我认为“有风险”符合微软的标准(如system()
、CreateProcess()
等),结果发现它不会触发 UAC 警告。我还记得写过一些愚蠢的 C# 应用程序,做过触发 UAC。
我的问题是:具体来说,什么会触发 UAC 警告?这与编译器有关系吗?(我通过 DevC++ 使用 MinGW)
答案1
简短回答:需要管理员权限的操作将触发 UAC。
维基百科提供了一份大纲列表:
用户帐户控制 -触发 UAC 提示的任务。
- 以管理员身份运行应用程序
- 对系统范围设置或 %SystemRoot% 或 %ProgramFiles% 中的文件的更改
- 安装和卸载应用程序
- 安装设备驱动程序
- 安装 ActiveX 控件
- 更改 Windows 防火墙的设置
- 更改 UAC 设置
- 配置 Windows 更新
- 添加或删除用户帐户
- 更改用户的账户类型
- 配置家长控制
- 运行任务计划程序
- 恢复备份的系统文件
- 查看或更改其他用户的文件夹和文件
- 运行磁盘碎片整理程序