[?] Saber si eres Administrador vb6

Iniciado por MeCraniDOS, 20 Febrero 2014, 12:08 PM

0 Miembros y 1 Visitante están viendo este tema.

MeCraniDOS

Buenas!  ;D

He estado buscando como saber si eres administrador o no con vb6, he encontrado estas dos funciones, y en Windows XP, funcionan perfectas, pero en Windows 8 siempre me devuelve false  :-[

(En Windows 7 y Windows Vista no lo he probado)


Código (vbnet) [Seleccionar]
Option Explicit 
 
' constantes 
'''''''''''''''''''''''''''''' 
 
'Constantes para usar con OpenSCManager 
Private Const GENERIC_READ = &H80000000 
Private Const GENERIC_WRITE = &H40000000 
Private Const GENERIC_EXECUTE = &H20000000 
 
' declaraciones Api 
'''''''''''''''''''''''''''''' 
 
'Función Api OpenSCManager 
Private Declare Function OpenSCManager Lib "advapi32.dll" Alias "OpenSCManagerA" ( _ 
    ByVal lpMachineName As String, _ 
    ByVal lpDatabaseName As String, _ 
    ByVal dwDesiredAccess As Long) As Long 
 
'Función Api CloseServiceHandle 
Private Declare Function CloseServiceHandle Lib "advapi32.dll" ( _ 
    ByVal hSCObject As Long) As Long 
 
Private Sub Form_Load() 
Dim Admin As Long 
 
    Admin = OpenSCManager(vbNullString, _ 
                               vbNullString, _ 
                               GENERIC_READ Or GENERIC_WRITE Or GENERIC_EXECUTE) 
 
    'Si la función retorna 0 no es Administrador 
    If Admin = 0 Then 
        MsgBox "No es un Administrador", vbInformation 
    Else 
        CloseServiceHandle Admin 
        MsgBox "Es un administrador", vbInformation 
    End If 
 
End Sub


Código (vbnet) [Seleccionar]
Option Explicit 
 
 
'Función Api IsNTAdmin 
Private Declare Function IsNTAdmin Lib "advpack.dll" ( _ 
    ByVal dwReserved As Long, _ 
    ByRef lpdwReserved As Long) As Long 
 
Private Sub Form_Load() 
    MsgBox "Administrador de este equipo: ? " & _ 
            CBool(IsNTAdmin(ByVal 0&, ByVal 0&)), vbInformation 
End Sub


Se puede mirar de otra manera? Es decir, alguna clave en el registro o con alguna otra funcion?  :-\ :-\

Espero que puedan ayudarme  :(

Saludos
"La física es el sistema operativo del Universo"
     -- Steven R Garman