Saber si el usuario es administrador |
Responder |
Autor | |
Plinio Montano
Habitual Unido: 10/Marzo/2015 Localización: Cuba Estado: Sin conexión Puntos: 129 |
Tema: Saber si el usuario es administrador Enviado: 28/Abril/2022 a las 02:20 |
Estimados colegas mis deseos de salud para todos.
? Como podría saber con VBA en Access, si el usuario activo en Windows es un usuario administrador, es decir si pertenece al grupo de administradores de Windows ? Saludos cordiales
|
|
pmv
|
|
mounir
Colaborador Unido: 09/Febrero/2009 Localización: Asturias-España Estado: Sin conexión Puntos: 6479 |
Enviado: 28/Abril/2022 a las 10:22 |
Hola!
Mira a ver si te sirve la función Environ mas cosas sobre su uso http://aulaclick-access.blogspot.com/2019/06/funcion-environ-en-access-variables-de.html |
|
Un Saludo.
|
|
Plinio Montano
Habitual Unido: 10/Marzo/2015 Localización: Cuba Estado: Sin conexión Puntos: 129 |
Enviado: 28/Abril/2022 a las 23:28 |
Gracias mounir, pero busque la función Environ y no me sirvió para determinar la categoría del usuario activo en windows.
|
|
pmv
|
|
Plinio Montano
Habitual Unido: 10/Marzo/2015 Localización: Cuba Estado: Sin conexión Puntos: 129 |
Enviado: 04/Mayo/2022 a las 06:27 |
Estimados colegas
Solicito se cierre este hilo. Saludos cordiales. Un gran abrazo
|
|
pmv
|
|
dokk
Habitual Unido: 15/Mayo/2020 Localización: Hendaye Estado: Sin conexión Puntos: 166 |
Enviado: 04/Mayo/2022 a las 13:24 |
¿Y cómo lo hiciste?
|
|
Albert Hostein
Aprendiendo cayendo |
|
Plinio Montano
Habitual Unido: 10/Marzo/2015 Localización: Cuba Estado: Sin conexión Puntos: 129 |
Enviado: 11/Mayo/2022 a las 19:27 |
Perdonen tuve algunas dificultades y he estados ausente, les pido disculpas.
El problema de saber si el usuario es administrador, lo resolví con el siguiente código, que en realidad lo que hace es decirme si el proceso Access está ejecutándose como administrador. 'Función Api OpenSCManager Public 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 Public Declare Function CloseServiceHandle Lib "advapi32.dll" ( _ ByVal hSCObject As Long) As Long Public Function EsAdminPC() As Boolean 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 EsAdminPC = False Else CloseServiceHandle Admin EsAdminPC = True End If End Function |
|
pmv
|
|
xavi
Ver perfil usuario
Enviar mensaje privado
Ver los mensajes del usuario
Visite la página de los usuarios
Añadir a la lista de amigos
Administrador Terrassa-BCN Unido: 10/Mayo/2005 Localización: Catalunya |||| Estado: Sin conexión Puntos: 14738 |
Enviado: 13/Mayo/2022 a las 12:43 |
Hola,
Me permito reabrir el tema porque he estado probando la función (siempre es interesante aprender cosas) y, en mi caso, no me aportaría la información deseable. Al probar la función siempre me devuelvo Falso aunque el usuario, que no es administrador, si tiene privilegios de administrador de la máquina. ¿Te pasa lo mismo? Por cierto, faltan los valores de las constantes. Los dejo aquí: Const GENERIC_READ As Long = &H80000000 Const GENERIC_WRITE As Long = &H40000000 Const GENERIC_EXECUTE As Long = &H20000000 Un saludo
|
|
emiliove
Administrador Unido: 16/Junio/2009 Localización: Mexico Estado: Sin conexión Puntos: 5694 |
Enviado: 13/Mayo/2022 a las 20:34 |
La Api IsUserAnAdmin creo que te va Xavi:
Saludos.
|
|
xavi
Ver perfil usuario
Enviar mensaje privado
Ver los mensajes del usuario
Visite la página de los usuarios
Añadir a la lista de amigos
Administrador Terrassa-BCN Unido: 10/Mayo/2005 Localización: Catalunya |||| Estado: Sin conexión Puntos: 14738 |
Enviado: 13/Mayo/2022 a las 21:29 |
Gracias Emilio.
Efectivamente, con esa API sabemos si la aplicación se está ejecutando como Administrador. En mi portatil mi perfil de usuario es de Administrador. Cuando abro Excel "normal" y ejecuto esa función me devuelve FALSE Cuando abro Excel "como administrador" me devuelve TRUE No es aun perfecto pero se acerca. He visto otras cosas que tienen buena pinta pero que no acaban de funcionar: [RESUELTO] ¿Cómo determinar si el usuario es administrador?-VBForums
|
|
Plinio Montano
Habitual Unido: 10/Marzo/2015 Localización: Cuba Estado: Sin conexión Puntos: 129 |
Enviado: 24/Agosto/2022 a las 22:30 |
Gracias, de hecho estoy resolviendo con esa solución de ejecutar el ms Access como administrador.
por favor les pido cerrar este hilo. saludos.
|
|
pmv
|
|
Responder | |
Tweet
|
Ir al foro | Permisos de foro Usted No puede publicar nuevos temas en este foro Usted No puede responder a temas en este foro Usted No puede borrar sus mensajes en este foro Usted No puede editar sus mensajes en este foro Usted No puede crear encuestas en este foro Usted No puede votar en encuestas en este foro |