我有一个WPF应用程序,它访问本地机器上的Windows服务,任务调度程序.当我部署此WPF应用程序并在没有"以管理员身份运行"的情况下运行它时,它会失败,因为它无法访问本地计算机上的Windows服务和任务计划程序.如果我使用"以管理员身份运行"运行它,它可以正常工作.
在生产中部署应用程序时,如何使我的应用程序默认以管理模式运行?
vcs*_*nes 77
你需要添加一个app.manifest.将requestedExecutionLevel
from 更改asInvoker为requireAdministrator.您可以使用添加文件对话框创建新清单,将其更改为需要管理员.确保您的项目设置也设置为使用该清单.这将允许您只需双击应用程序,它将自动提示升级(如果尚未提升).
有关更多文档,请参见此处
http://msdn.microsoft.com/en-us/library/bb756929.aspx
编辑:为了它的价值,本文使用VS 2005并使用mt.exe嵌入清单.如果您使用的是Visual Studio 2008+,则内置它.只需打开项目的属性,然后在"应用程序"选项卡上选择清单.
Run Code Online (Sandbox Code Playgroud)<requestedExecutionLevel level="asInvoker" uiAccess="false" />
至
Run Code Online (Sandbox Code Playgroud)<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
然后,WPF应用程序将以管理员身份运行。
使 WPF 应用程序在管理员模式下运行的步骤
1.打开解决方案资源管理器
2.右键单击解决方案--->添加---->新项目---->App.Manifest---->确定
3.编辑Manifest文件如下:
<requestedExecutionLevel level="asInvoker" uiAccess="false" />
Run Code Online (Sandbox Code Playgroud)
(到)
<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
Run Code Online (Sandbox Code Playgroud)
4.编辑Manifest文件后,转到解决方案项目(右键单击)----->属性----->安全
勾选“启用 ClickOnce 安全设置”复选框
| 归档时间: |
|
| 查看次数: |
29988 次 |
| 最近记录: |