我在域上有一个工作站,它显示了执行程序的 UAC(用户帐户控制)提示,但我不知道原因(我不希望它以管理员权限运行)。
这是 Windows 7 工作站和 Windows Server 2003。其他工作站均未出现此症状(使用同一用户帐户登录)。EXE 文件位于映射的网络驱动器上。在快捷方式的兼容性属性中,未选中“以管理员身份运行此程序”。应用程序上没有请求管理权限的清单(其他工作站均未收到提示)。
哪些其他 Windows 设置可以触发可执行文件的 UAC 提示?
答案1
似乎有一个 Windows 内部程序列表,其中列出了需要 UAC 对话框的程序,即使它们没有清单。Windows 如何确定给定的可执行文件是否应始终在启动时显示 UAC 对话框,这一点并不十分透明。
我偶然发现了这一点比特流字体导航器,它与 CorelDraw 一起提供。如果我只是重命名字体导航程序到字体导航程序,启动它不再显示 UAC 对话框。Windows 正在使用比文件名更多的信息,但是,将另一个没有清单的 exe 重命名为字体导航程序没有推出 UAC。
我认为你有两个选择:
- 您可以重命名该 exe 并按原样部署
- 您可以将清单添加到可执行文件中(使用 mt.exe 工具,如果这篇 MSDN 文章),指定以下行为:
- 作为调用者— 从不显示 UAC 对话框
- 最高可用— 为管理员组成员显示 UAC 对话框。普通用户不会看到对话框,他们总是以用户权限启动应用程序
- 需要管理员— 始终显示 UAC 对话框
当选择清单选项时,作为调用者是我的选择。
答案2
很多事情。首先是:
- 访问注册表的限制区域
- 访问文件系统的限制区域
- 设置系统环境变量
- 执行来自不受信任来源的文件
可执行文件应该做什么?
答案3
初步想法
- 它是否设置为在其他机器上以管理员身份运行?
- 其他盒子上的 UAC 是否被禁用?
- 特权目录中是否有任何本地日志路径?
编辑:根据其他答案的评论,尝试卡斯波尔将网络驱动器设置为受信任
我已经有一段时间没这样做了,抱歉,YMMV