在stack和其他论坛上有很多关于禁用/绕过/抑制UAC的问题/答案。也有解决方案。但从程序上看可能没有。我只能看到一个解决方案Disabling UAC programmatically,但可能没有真正的程序解决方案。
有没有一个程序化的解决方案,保存用户提示每次他/她运行一个程序,如wamp,他们总是要点击是,所以这将是更好地告诉窗口,他们的选择总是是。我相信会有作为
我已经发现Here,windows通过GUI在任务计划程序中提供了这个工具,所以它必须通过代码也是可能的。
在stack和其他论坛上有很多关于禁用/绕过/抑制UAC的问题/答案。也有解决方案。但从程序上看可能没有。我只能看到一个解决方案Disabling UAC programmatically,但可能没有真正的程序解决方案。
有没有一个程序化的解决方案,保存用户提示每次他/她运行一个程序,如wamp,他们总是要点击是,所以这将是更好地告诉窗口,他们的选择总是是。我相信会有作为
我已经发现Here,windows通过GUI在任务计划程序中提供了这个工具,所以它必须通过代码也是可能的。
3条答案
按热度按时间wmvff8tz1#
1.从This link =〉Original Source => dllme.com下载Microsoft.Win32.TaskScheduler.dll
1.制作一个c#应用程序(Windows或控制台)并添加对上述dll的引用
1.将新项(应用程序清单文件)添加到项目(此应用程序)
1.将
<requestedExecutionLevel level="asInvoker" uiAccess="false" />
更改为<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
1.在program.cs文件中编写以下代码
6.现在编译并运行您的应用程序(此应用程序)
现在你的应用程序(如WAMP)将运行,而不会提示任何UAC对话框上你想要的时间表(每次你登录窗口在我的情况下)
发起人:Can you turn off UAC for a single app?和Selectively disabling UAC for specific programs on Windows 7
基本思想来源:Make Vista launch UAC restricted programs at startup with Task Scheduler
nfzehxib2#
正确的方法不是忽略用户访问控制(UAC),而是在这些参数范围内进行测试,这样你就不会破坏安全性,而是在它的范围内工作。
通过禁用安全性,你会面临漏洞利用的风险。根据Secuna提供的几个安全测试,已经注意到小公司,懒惰的开发者应用程序,以及公然无视安全性的应用程序一直受到关注。
这意味着您的应用程序可能在某个时候成为受害者。
我会采取的方法是在UAC中测试。确保存在适当的权限来执行您的任务,这样它就不会一直以提升的权限运行。例如:
一些沿着的东西可以让你在UAC上测试,然后执行一个任务。我不太清楚你为什么想禁用UAC,但这将是我的方法。
希望能有所帮助。
7lrncoxx3#
如果要绕过以标准用户身份运行时获得的保护,则更好的解决方案是更改文件夹和注册表项的权限,以便允许所有用户修改应用程序的文件夹。
使用伪代码实现:
即使UAC被禁用(即用户是标准用户,没有方便的方式让他们提升),这也适用于Windows XP,那里没有UAC便利功能,你必须快速切换用户才能以管理员身份运行一些东西。
然后,您将显示可执行文件以运行asInvoker,因为您不需要管理权限。
扪心自问:
我在Windows XP上会做什么?
如果禁用了UAC,我会在Windows 7上做什么?
如果他们是一个标准用户,你的程序会崩溃吗?