积极答复者
Winform获得管理员权限出现错误(ClickOnce 不支持请求执行级别)

问题
-
工具:VS2010(管理员权限运行)
系统:Win7
我把程序启用ClickOnce后
把app.manifest中的requestedExecutionLevel level修改为requireAdministrator
VS提示错误:错误 1 ClickOnce 不支持请求执行级别“requireAdministrator”。
这是我的配置文件
<?xml version="1.0" encoding="utf-8"?> <asmv1:assembly manifestVersion="1.0" xmlns="urn:schemas-microsoft-com:asm.v1" xmlns:asmv1="urn:schemas-microsoft-com:asm.v1" xmlns:asmv2="urn:schemas-microsoft-com:asm.v2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <assemblyIdentity version="1.0.0.0" name="MyApplication.app" /> <trustInfo xmlns="urn:schemas-microsoft-com:asm.v2"> <security> <requestedPrivileges xmlns="urn:schemas-microsoft-com:asm.v3"> <!-- UAC 清单选项 如果要更改 Windows 用户帐户控制级别,请用以下节点之一替换 requestedExecutionLevel 节点。 <requestedExecutionLevel level="asInvoker" uiAccess="false" /> <requestedExecutionLevel level="requireAdministrator" uiAccess="false" /> <requestedExecutionLevel level="highestAvailable" uiAccess="false" /> 指定 requestedExecutionLevel 节点将会禁用文件和注册表虚拟化。 如果要利用文件和注册表虚拟化实现向后 兼容性,则删除 requestedExecutionLevel 节点。 --> <requestedExecutionLevel level="requireAdministrator" uiAccess="false" /> </requestedPrivileges> </security> </trustInfo> <compatibility xmlns="urn:schemas-microsoft-com:compatibility.v1"> <application> <!-- 此应用程序设计使用的所有 Windows 版本的列表。Windows 将会自动选择最兼容的环境。--> <!-- 如果应用程序设计使用 Windows 7,请取消注释以下 supportedOS 节点--> <!--<supportedOS Id="{35138b9a-5d96-4fbd-8e2d-a2440225f93a}"/>--> </application> </compatibility> <!-- 启用 Windows 公共控件和对话框的主题(Windows XP 和更高版本) --> <!-- <dependency> <dependentAssembly> <assemblyIdentity type="win32" name="Microsoft.Windows.Common-Controls" version="6.0.0.0" processorArchitecture="*" publicKeyToken="6595b64144ccf1df" language="*" /> </dependentAssembly> </dependency>--> </asmv1:assembly>
答案
-
使用ClickOne方式发布不允许系统管理员级别。
如果要求使用系统管理员级别运行,就不能使用ClickOne方式发布。- 已建议为答案 Jason Dot WangModerator 2012年8月31日 8:10
- 已标记为答案 Jason Dot WangModerator 2012年8月31日 8:10
全部回复
-
Hi MaJiXiang,
在VS2010下 右键项目=>属性=>安全性=>直接勾选“启用ClickOnce安全设置”即可解决问题。更改level时候会提示错误“ClickOnce不支持请求执行级别...” 。
Jason Wang [MSFT]
MSDN Community Support | Feedback to us
-
使用ClickOne方式发布不允许系统管理员级别。
如果要求使用系统管理员级别运行,就不能使用ClickOne方式发布。- 已建议为答案 Jason Dot WangModerator 2012年8月31日 8:10
- 已标记为答案 Jason Dot WangModerator 2012年8月31日 8:10