如何检查应用程序是否以管理员VB.NET身份运行

Ali*_*mad 1 vb.net admin vb.net-2010

我已经创建了一个应用程序,它的一些功能只适用于管理员权限,

如何检查应用程序是否以管理员权限运行?

  • 如果应用程序未运行且管理员权限以管理员身份运行,则显示一个消息框.

ABE*_*ILA 6

Imports System.Security.Principal

Dim identity = WindowsIdentity.GetCurrent()
Dim principal = new WindowsPrincipal(identity)
Dim isElevated as Boolean = principal.IsInRole(WindowsBuiltInRole.Administrator) 
If isElevated Then
  MessageBox.Show("Is Admin")
End If
Run Code Online (Sandbox Code Playgroud)

在VB.Net中甚至还有一个快捷方式:

If My.User.IsInRole(ApplicationServices.BuiltInRole.Administrat??or) Then ... 
Run Code Online (Sandbox Code Playgroud)


Med*_*ric 5

只需更改app.manifest以强制要求管理:

解决方案资源管理器->我的项目->查看Windows设置

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