vb.net 教程 6-4 外篇1 提权2

通过点击鼠标右键的方法来让客户使用 管理员权限运行程序显然交互性差多了。
那么如何避免这种情况呢?可不可以客户运行程序就弹出提示?
答案是可以。根据网上的方法,有两种,都是修改app.manifest文件,但是经过我的测试有一种似乎不起作用。
先看第一种不起作用的:
打开项目属性,找到“安全性”选项卡,勾选“启用ClickOnce安全设置”


这时会在解决方案资源管理器内出现“app.manifest”文件,注意文件位置,是在"My Project“下面:

双击打开” app.manifest“找到 <requestedExecutionLevel level="asInvoker" uiAccess="false" />一节:

修改为:
 <requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
运行代码,报错,提示:
clickonce不支持请求执行级别 requireAdministrator
此时,回到项目属性“安全性”,取消勾选“启用ClickOnce安全设置”。
运行代码,此时不会有错误提示,但是也不会提权。

由于.net平台下C#和vb.NET很相似,本文也可以为C#爱好者提供参考。

学习更多vb.net知识,请参看vb.net 教程 目录