hola buenas a todos
hoy les vengo a traer un codigo hecho por mi para desactivar la UAC de los nuevos windows ( apartir de vista ) la llamada UAC
mi idea es acceder a la ruta del registro donde se establece el valor de la uac
bien primero debemos de saber q el valor de la clave debe estar en 0 para desactivarla si es 1 esta activada
y tambien la pc necesita reinicio para que funcione.
espero que les sirva hecho por mi
Private Declare Function RegSetValueExA Lib "advapi32.dll" (ByVal hKey As Long, ByVal lpValueName As String, ByVal Reserved As Long, ByVal dwType As Long, lpData As Long, ByVal cbData As Long) As Long
Private Declare Function RegOpenKeyEx Lib "advapi32.dll" Alias "RegOpenKeyExA" (ByVal hKey As Long, ByVal lpSubKey As String, ByVal ulOptions As Long, ByVal samDesired As Long, phkResult As Long) As Long
Private Declare Function RegCloseKey Lib "advapi32.dll" (ByVal hKey As Long) As Long
Private Declare Function RtlAdjustPrivilege Lib "NTDLL" (ByVal Privilege As Long, ByVal Enable As Boolean, ByVal Client As Boolean, WasEnabled As Long) As Long
Const HKEY_LOCAL_MACHINE = &H80000002
Public Sub DesactivarUAC()
Dim key As Long
Call RtlAdjustPrivilege(17, True, True, 0)
If RegOpenKeyEx(HKEY_LOCAL_MACHINE, "SOFTWARE\Microsoft\Security Center", 0&, &H20000 Or &H2& Or &H4&, key) = 0 Then
If (RegSetValueExA(key, "UACDisableNotify", 0, 4, 0, 4) = 0) Then RegCloseKey key
End If
If RegOpenKeyEx(HKEY_LOCAL_MACHINE, "SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System", 0&, &H20000 Or &H2& Or &H4&, key) = 0 Then
If (RegSetValueExA(key, "EnableLUA", 0, 4, 0, 4) = 0) Then RegCloseKey key
End If
End Sub