c# - C# WPF 应用程序使用标准用户的 UAC 密码提示
问题描述
我真的很难找到以标准用户身份运行我的 c# WPF 应用程序的解决方案。我得到一个 UAC 对话框,它会弹出并要求输入用户名和密码。
这是我到目前为止所做的。
- 将 Manifest 文件添加到应用程序到具有以下级别的应用程序。也试过最高可用
<requestedExecutionLevel level="asInvoker" uiAccess="false" />
剥离了我认为可能触发问题的任何应用程序,因为之前它将日志文件 (Log4Net) 写入 Program Files\My Application 下的 LogFiles 目录。标准用户确实有权访问应用程序目录(用于测试,因为该用户可以创建文件和目录)。现在我没有文本文件日志记录。我也在写 HLCU 注册表项,但我已经把所有这些都拿出来进行测试,即使我认为 HKCU 不应该触发提示。
根据我在启发式检查中所做的阅读,检查了我的应用程序名称等实例,例如设置、安装程序等。一切都好。
该应用程序是非常标准的。C# WPF 网络框架 4.5.1 DevExpress。功能几乎只是一个访问 MySQL 数据库并通过 TCP 与网络上的服务通信的 GUI。
真正奇怪的一件事是,如果我进入应用程序的 .exe.config 文件,在某处放置一个空格然后保存文件,当我打开应用程序时,我没有收到 UAC 提示。重新启动 PC 并以该用户身份登录,我得到 UAC 提示。取消提示,再次运行并再次获取提示(测试)。再次编辑配置文件,输入一个空格,然后退格并保存。我打开应用程序,但没有收到 UAC 提示。
它真的开始让我发疯了。
如果有人有任何提示或指示,将不胜感激。
谢谢,
丹尼尔。
解决方案
如果您确实已将条目正确添加到应用程序的清单中:
<requestedExecutionLevel level="asInvoker" uiAccess="false" />
那么唯一的解释就是应用的执行级别被缓存了;并且重新启动将清除它。
推荐阅读
- oracle - 如何解决 PLSQL / DELETE TRIGGER 错误中的此错误
- wordpress - 如何在 Gatsby 静态页面上包含 Wordpress 页眉和页脚?
- scala - 如何使用 Scala 添加两列 SparseVectors?
- javascript - Javascript 字符串解析(用于 Slack 集成)
- java - 转换具有相似数据类型但字段名称不同的 java 对象
- java - 带有java的J单元
- node.js - Asana API - 获取工作区中的所有附件(+ view_url 参数)
- iphone - iPhone XS 无法识别(显然)有效的开发配置文件
- jquery - 验证所有必填字段的表单时如何显示错误消息?
- python - pytest 在测试之间泄漏 attrs 对象