c# - Windows 窗体 - C# - 请求管理员权限

标签 c# winforms privileges

<分区>

Possible Duplicate:
How to force C# App to run as administrator on Windows 7

我正在构建一个 WinForms C# 应用程序,我需要它来请求管理员权限,以便我可以复制和打开 C:\ 中的目录。

这可能吗?

我将要使用的代码(如果有人需要的话)是这样的:

if (!Directory.Exists("C:\\smm"))
{
    Directory.Create("gg");
}

或者类似的东西,但我确定我需要管理员权限。

有人知道我该怎么做吗?

最佳答案

您需要在您的项目中启用 ClickOnce 安全设置,然后将应用程序 list 更改为需要管理员权限。这将导致 Windows 在进程启动时显示 UAC 提升提示,因此用户可以将您的程序升级为管理员。

要启用 ClickOnce,请进入项目的属性,选择左侧的“安全”选项卡,然后选中“启用 ClickOnce 安全设置”复选框。然后进入项目的“Properties”目录,打开 app.manifest 文件。在该文件中,有一行设置所需的权限:

<requestedExecutionLevel level="asInvoker" uiAccess="false" />

你可以让它需要像这样的管理员权限:

<requestedExecutionLevel  level="requireAdministrator" uiAccess="false" />

这将使它在进程启动时需要管理员权限。

关于c# - Windows 窗体 - C# - 请求管理员权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8062642/

相关文章:

c# - 接收命令时通过 TCP 发送字符串

c# - 在我的 winforms 应用程序中检测以太网端口插入/移除?

sql - Oracle 中删除对象后权限丢失

c# - 使用C#以横向模式将excel文件打印为pdf

c# - 正则表达式获取自定义TAG之间的所有值

c# - WinForms 文本框中的换行符

delphi - Win-7下列出服务及服务状态

mysql - 具有授予选项的用户无法授予创建用户

c# - 在派生自 Stream 的类上实现 Dispose

c# - OnPropertyChanged 在 xamarin.forms 应用程序中的 android 上引发异常