Esta función devuelve Verdadero o Falso dependiendo si el usuario actual es Administrador del Sistema o no. Sólo para NT:
Const GENERIC_READ = &H80000000
Const GENERIC_WRITE = &H40000000
Const GENERIC_EXECUTE = &H20000000
Public Declare Function OpenSCManager Lib "advapi32.dll" Alias "OpenSCManagerA" (ByVal lpMachineName As String, _
ByVal lpDatabaseName As String, ByVal dwDesiredAccess As Long) As Long
Public Declare Function CloseServiceHandle Lib "advapi32.dll" (ByVal hSCObject As Long) As Long
Public Function UsuarioActualEsAdministrador()
Dim ResUsuario As Long
ResUsuario = OpenSCManager(vbNullString, vbNullString, GENERIC_READ Or GENERIC_WRITE Or GENERIC_EXECUTE)
If ResUsuario = 0 Then
UsuarioActualEsAdministrador = False
Else
CloseServiceHandle ResUsuario
UsuarioActualEsAdministrador = True
End If
End Function
Posted
dom, nov 21 1999 19:33
by
Maverick