我需要我的一个.exe永远以pipe理员身份运行没有UAC提示。 我的程序将安装与设置,这将有一次pipe理员权限,我需要执行这样的步骤在这个设置中,我的exe文件将始终作为pipe理员没有UAC提示执行。
到目前为止我find了两个解决scheme:
1.使用自定义服务,这将提升我的程序。
2.使用任务计划程序 。
用于Windows 98的.NET 2.0应用程序的安装程序
Quartz .Net架构问题
自行终止或卸载Windows服务
System.IO.Directory.GetFiles返回与Windows XP Search Companion不同的结果
谢谢。
使用.NET的Windows Shell集成
阻止用户停止进程
如何在Linux下运行C#项目
如何查询Windows上的打印队列
当然,如果你只是想要驱动UI,你应该怎么做才能使用清单中的UI访问标志(参见http://msdn.microsoft.com/en-us/library/ms742884.aspx )。 如果您将应用程序安装在受信任的位置(例如system32)并且已经签名(bleh!),那么当您运行应用程序时,它将被提升到高位(对于管理员帐户)。
签名要求使其稍微恼人,但至少会稍微减少攻击面,因为您的代码以高完整性运行,而不是以管理员令牌运行。
如果有可能这样做,那么UAC将是完全无效的。 未经用户同意,应用软件无法提升是UAC背后的根本原则。
除了已经有一个升级过程启动它(即服务或任务调度),答案是否定的,这是不能做到的。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。