gpt4 book ai didi

.net - 我们能否让UAC提示仅显示一次?

转载 作者:行者123 更新时间:2023-12-04 16:30:31 25 4
gpt4 key购买 nike

有一种方法可以让应用程序在首次运行时仅向用户显示一次UAC提示。此后,没有进一步的提示。

换句话说,我了解我们的应用需要用户的UAC权限才能执行某些操作。很好。但是我们不希望它在每次运行时都必须不断询问。用户可以一直授予我们的应用程序许可吗?还是我要问的内容违反了UAC的基本原则?

我们正在使用.NET和Windows 7

最佳答案

您的问题的答案是:不,您不能这样做。

Microsoft特别禁止这种行为。如果应用程序可以将自己添加到排除列表中,那么我们将重回以前的困惑局面。

您需要做的是使您的程序不需要管理访问权限。

问问自己:您在Windows XP上做了什么?

  • 我不允许运行您的软件吗?
  • 我是标准用户时,您的软件是否崩溃?
  • 您的软件没有值(value),并且在由标准用户运行时绝对没有功能吗?

  • Windows XP没有UAC的说服力。用户以管理员身份运行程序的唯一方法是与其他用户登录。这比单击“继续”要糟糕得多。

    如果您不想编写标准的用户友好型软件,那么您将成为问题的一部分。 UAC不是问题,UAC是便利。我可以关闭UAC,以标准用户的身份全职运行,但是您的软件 仍然无法使用。

    Microsoft considered
  • 白名单
  • 记住我的偏好
  • 不要再问我。

  • 如果您有一个白名单,那么每个程序都会在安装时将自身添加到这样的列表中。

    如果存在这样的白名单,则您的应用将成为恶意软件的目标。希望修改二进制文件以执行所需的内容。因为它知道该程序将以静默方式提升。

    恶意软件会喜欢使用SendMessage戳您的应用程序,试图传递无效的数据或结构,试图让您的管理应用程序执行所需的代码。

    如果用户可以选择禁用程序将来的提示,那么他们就可以这样做,并且每个程序都将以管理员身份运行,我们将回到原来的状态。

    所有这些想法都不能解决问题: 几乎没有程序实际上需要管理访问

    现在终于到了迫使开发商适应这一事实的时候了。

    白名单无法使用

    有些人想出让白名单起作用的方法。
  • 有一个复选框,用户可以说“不再提示我该文件”
    如果存储该文件名,则其他具有相同名称的程序将以管理员身份静默运行。
  • 好吧,那么我们将记录完整路径,或使用文件的哈希作为白名单条目。
    如果存在白名单,那么其他程序将在安装时将自己添加到该列表中,并以用户不希望的管理权限运行程序。
  • 如果只允许签名的应用程序,那我们知道它们是安全的。申请是不安全的,因为它们已经签名。应用程序不必一定是恶意软件,否则就会被滥用来做坏事。 (例如,Flash,Firefox(即chrome,safari,opera,word,photoshop,Yahoo图像上传工具)中的缓冲区溢出)。

  • 您必须将有效代码签名者的列表存储在 列表中中。而且,无论如何分割,只要将 放入白名单,就意味着应用程序会将自己添加到该列表中。
  • 好吧,那就不要让他们访问列表。甚至不允许管理员将项目添加到列表中。如果不是这样,甚至管理员都不能将项目添加到列表中,那么用户首先如何将项目添加到列表中?如果不允许您将项目添加到白名单,则不能添加项目!

  • 以及您如何管理白名单?可以说用户改变了主意,或者父亲改变了主意,IT改变了主意,企业改变了主意,或者软件发布者改变了主意:如何从列表中删除项目-特别是在没有人的情况下允许修改列表。

    摘要: 白名单无法使用

    关于.net - 我们能否让UAC提示仅显示一次?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2019743/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com