Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/158.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 如何为我的应用程序禁用UAC_C++_Windows 7_Windows Vista_Uac - Fatal编程技术网

C++ 如何为我的应用程序禁用UAC

C++ 如何为我的应用程序禁用UAC,c++,windows-7,windows-vista,uac,C++,Windows 7,Windows Vista,Uac,当我试图以管理员的身份运行我的应用程序时,我得到了以下信息 错误,以及是否允许 如果我是直接运行应用程序,而不是作为管理员,那么这似乎是可行的。我需要做些什么来摆脱UAC,不,我不希望用户手动更改UAC设置 我是否只需要调整我的程序或任何需要签名的证书的注册表设置 您的流程需要提升其权限。CodeProject中有几篇关于这方面的文章,但请先看一篇。一般来说,您不能禁用UAC。UAC的目标是提供针对恶意软件的深度防御。如果Tojan可以禁用UAC,那将适得其反 你能做的就是接受UAC的存在,并接

当我试图以管理员的身份运行我的应用程序时,我得到了以下信息 错误,以及是否允许

如果我是直接运行应用程序,而不是作为管理员,那么这似乎是可行的。我需要做些什么来摆脱UAC,不,我不希望用户手动更改UAC设置

我是否只需要调整我的程序或任何需要签名的证书的注册表设置


您的流程需要提升其权限。CodeProject中有几篇关于这方面的文章,但请先看一篇。

一般来说,您不能禁用UAC。UAC的目标是提供针对恶意软件的深度防御。如果Tojan可以禁用UAC,那将适得其反


你能做的就是接受UAC的存在,并接受它。您通常不应该以管理员的身份运行,因此在运行时可以获得UAC对话框。例如,自动启动可以按用户设置进行处理,这意味着您无需成为管理员即可进行更改。

将应用程序配置为始终运行:

作为计算机上的一种解决方法,您可以创建一个启动应用程序的计划任务,并在“常规设置”中勾选“以最高权限运行”。然后创建一个指向调度任务的链接,链接文本为
schtasks/run/tn“TASKNAMEINQUOTES”
。这将调用在没有UAC提示的情况下以elvated权限运行应用程序的任务。 这里有更多信息:

我有一个程序(Notepad2)突然要求在win-7系统上拥有管理员权限。看来这很容易改变

右键单击应用程序,选择属性,转到兼容性选项卡,底部为

特权级别:以管理员身份运行此程序

松开它,确定你的出路。为我工作。

Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System

有这样的项目,如
同意PromptBehaviorAdmin
。更改它。

@Subhen这与您之前的问题有关:@David Heffernan,之前的问题是关于“如何在我不是以管理员身份运行文件时创建文件”。在这里,我想知道当我作为管理员运行应用程序时如何避免UAC。如果用户使用UAC运行,那么如果您的应用程序在其清单中标记为需要管理员权限,那么系统将显示提升对话框。一个更好的解决方案是避免以管理员身份运行。这就是你要做的,也是所有关于UAC的文档建议你做的。你的应用程序有什么需要管理员权限的地方?@David Heffernan,有时我需要向注册表写入一些信息,或者如果我想通过注册表项向msconfig(用于自动启动)添加和删除条目,这需要管理员previlage@Subhen官方推荐的方法是,仅当用户准备执行需要管理员权限的操作时才请求提升。对自动启动的更改通常在软件安装期间进行,软件安装通常具有管理员权限。但是,如果您想要管理员权限和用户启用的UAC,那么您无法避免该对话框。有很多关于这个主题的文章可以追溯到Vista时代。他的过程甚至还没有开始@比利:我同意。在这种情况下,我的回答没有多大帮助。+1表示随大流,这是对情况的简洁表达