Autor Tema: Saber si tengo permisos carpeta  (Leído 2280 veces)

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

Psyke1

  • Megabyte
  • ***
  • Mensajes: 130
  • Reputación: +11/-7
  • VBManiac
    • Ver Perfil
    • h-Sec
Saber si tengo permisos carpeta
« en: Noviembre 24, 2012, 05:29:32 pm »
Necesito saber si tengo permisos de escritura en una carpeta.
Se me ocurrió solucionarlo creando un archivo y controlando los errores, pero me parece demasiado feo. ::)
¿Alguna idea?

Gracias.

LeandroA

  • Administrador
  • Petabyte
  • *****
  • Mensajes: 1128
  • Reputación: +151/-8
    • Ver Perfil
Re:Saber si tengo permisos carpeta
« Respuesta #1 en: Noviembre 24, 2012, 09:38:38 pm »
Hola yo use una ves esta funcion de Karcrack que es algo asi como decis vos pero es rápida y funciona bien.


Código: (Vb) [Seleccionar]

Public Enum AccessType
    GENERIC_READ = &H80000000
    GENERIC_WRITE = &H40000000
    GENERIC_READWRITE = &HC0000000
End Enum

Public Function CheckAccess(ByVal sPath As String, ByVal dwDesiredAccess As AccessType) As Long 'by Karcrack
    Dim lRet        As Long
 
    lRet = CreateFile(sPath, dwDesiredAccess, FILE_SHARE_READ + FILE_SHARE_WRITE, ByVal 0&, OPEN_EXISTING, FILE_FLAG_BACKUP_SEMANTICS, 0)
    If (lRet <> INVALID_HANDLE_VALUE) Then
        Call CloseHandle(lRet)
        CheckAccess = 1
    End If
End Function

completa las apis y constantes.

Psyke1

  • Megabyte
  • ***
  • Mensajes: 130
  • Reputación: +11/-7
  • VBManiac
    • Ver Perfil
    • h-Sec
Re:Saber si tengo permisos carpeta
« Respuesta #2 en: Noviembre 25, 2012, 07:03:51 am »
Gracias LeandroA!
Al menos funciona y es un poco más elegante. :P

DoEvents! :P