如何在运行时请求管理员权限,以便提示用户允许或禁止它?
问问题
1817 次
2 回答
1
如果您希望它响应按钮(例如,例如任务管理器中的“显示所有用户的进程”),您必须使用以下方法重新启动您的应用程序
ShellExecute(0,L"runas",exepath,0,0,SW_SHOWNORMAL);
于 2010-08-25T11:35:13.753 回答
0
此信息写入 exe 文件清单中。您必须使用该requestedExecutionLevel
字段(但不确定 - 尝试将其设置为highestAvailable
并查看它是否满足您的需要)。有关更多信息,请参见此处的示例(有些旧文章但仍然有效):http: //blogs.msdn.com/b/cjacks/archive/2006/09/08/exploring-manifests-part-2-default-namespaces-和-uac-manifests-in-windows-vista.aspx
Visual Studio 中有一些工具可以让你嵌入自己的清单,甚至只是编辑它。还有一个用 Perl 编写的工具(http://metacpan.org/pod/Win32::Exe::Manifest)。
编辑:有关更多信息,请参阅本文:http: //www.codeproject.com/Articles/66259/Requesting-Admin-Approval-at-Application-Start.aspx
于 2010-08-04T12:11:02.937 回答