Batch Index du Forum
S’enregistrerRechercherFAQMembresGroupesConnexion
Répondre au sujet Page 1 sur 1
Lister les dossiers avec les droits sur ces dossiers listés
Auteur Message
Répondre en citant
Message Lister les dossiers avec les droits sur ces dossiers listés 
Bonjour,

tout est dans le titre !

Comment lister des fichiers avec l'info supplémentaire qui permettrait de voir les droits sur les dossiers ?

J'ai regardé la commande Dir mais je ne trouve rien...

Merci pour votre aide ! ^^




______________________________________________________
-Il n'y a qu'en affrontant les plus forts que l'on progresse-

Visiter le site web du posteur
Message Publicité 
PublicitéSupprimer les publicités ?


Répondre en citant
Message Lister les dossiers avec les droits sur ces dossiers listés 
Salut,

Je ne sais pas si c'est possible mais tu peux peut-être regarder les droits de chaque dossier avec la commande xcalcs ?




______________________________________________________
Répondre en citant
Message Lister les dossiers avec les droits sur ces dossiers listés 
Déjà tenté et ne fonctionne pas sous 7 Pro...




______________________________________________________
-Il n'y a qu'en affrontant les plus forts que l'on progresse-

Visiter le site web du posteur
Répondre en citant
Message Lister les dossiers avec les droits sur ces dossiers listés 
hello!

tu suprimmes un fichier au hasard et puis si ça échoue c'est que t'as pas les droits Mort de Rire

sérieusement je pense que tu peux tenter cette méthode par écriture, tu essaies d'ecrire un fichier dans le dossier si ça réussi tu le supprimme et tu mets droit autorisés sinon ... bah tu fais l'inverse Mr. Green

@+




______________________________________________________
--
> Que pensez vous de l'ajout du repertoire point dans $PATH ?
Ma version de troll 18.0.32 beta 3 vient de me faire un core dump.
-+- SE in Guide du Linuxien Pervers : Bien développer son troll -+-

[Dos9]
Visiter le site web du posteur Skype
Répondre en citant
Message Lister les dossiers avec les droits sur ces dossiers listés 
Bonjour, j'ai fait une petite recherche et je pense que pour lister des droits de dossier tu est obligé de passer par autre chose que le batch natif.

Je suis tombé sur ce vbscript, en l'adaptant un peu voir en l'intégrant a ton batch sa pourrai résoudre ton problème.

Code:

Const FOLDER_ADD_SUBDIRECTORY = &h000004
Const FILE_DELETE             = &h010000
Const FOLDER_TRAVERSE         = &h000020
Const FILE_READ_ATTRIBUTES    = &h000080
Const FILE_READ_CONTROL       = &h020000
Const FOLDER_LIST_DIRECTORY   = &h000001
Const FILE_READ_EA            = &h000008
Const FILE_WRITE_EA           = &h000010
Const FILE_SYNCHRONIZE        = &h100000
Const FILE_WRITE_ATTRIBUTES   = &h000100
Const FILE_WRITE_DAC          = &h040000
Const FOLDER_ADD_FILE         = &h000002
 
 
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
' Fonction Recup_Droits() : permet de récupérer les droits NTFS du dossier passé en paramètre (folder (chaine de caractères))
'
Sub Recup_Droits(folder)
 
   ' Option : Ne pas stopper le programme en cas d'erreur
   On Error Resume Next
 
   ' Dédinition des variables de la fonction
   Dim objFolderSecuritySettings
   Dim intRetVal
   Dim intControlFlags
   Dim objSD
   Dim arrACEs
   Dim objACE
 
   ' Dans la chaîne folder, on remplace tous les '\' par "\\"
   folder = Replace(folder, "\", "\\")
 
   ' Récupération des droits NTFS du dossier folder
   Set objFolderSecuritySettings = objWMIService.Get("Win32_LogicalFileSecuritySetting=""" & folder & """")
   'WScript.Echo "folder : " & folder
 
   If Err.Number <> 0 Then   
      WScript.Echo "Erreur : Impossible d'obtenir les informations sur les droits NTFS du dossier " & folder & VbCrLf & VbCrLf & "Erreur n° " & Err.Number & " , Description : " & Err.Description
      Err.Clear
 
   Else
      intRetVal = objFolderSecuritySettings.GetSecurityDescriptor(objSD)
 
      intControlFlags = objSD.ControlFlags
 
      If intControlFlags AND SE_DACL_PRESENT Then
         arrACEs = objSD.DACL
 
         For Each objACE in arrACEs
 
            If (objACE.Trustee.Name <> "Administrateurs") AND (objACE.Trustee.Name <> "SYSTEM") Then
               testIsPresent = false
               i = colonneDebut
 
 
               If testIsPresent = false Then
                  intCol = i
 
                  WScript.Echo "Nouveau groupe trouvé : " & objACE.Trustee.Name
 
               End If
 
               If objACE.AccessMask AND FOLDER_TRAVERSE Then
 
                  If objACE.AccessMask AND FILE_READ_ATTRIBUTES Then
 
                     If objACE.AccessMask AND FILE_READ_EA Then
 
                        If objACE.AccessMask AND FOLDER_LIST_DIRECTORY Then
 
                           If objACE.AccessMask AND FILE_WRITE_EA Then
 
                              If objACE.AccessMask AND FILE_DELETE Then
 
                                 If objACE.AccessMask AND FILE_WRITE_ATTRIBUTES Then
 
                                    If objACE.AccessMask AND FOLDER_ADD_FILE Then
                                       WScript.Echo "Ecriture"
 
 
                                    End If
                                 End If
                              End If
 
                           Else
                              WScript.Echo "LECTURE"
 
                           End If
                        End If
                     End If
                  End If
 
               Else
 
                  strDroits = ""
 
                  If objACE.AccessMask AND FOLDER_TRAVERSE Then
                     strDroits = strDroits & "Parcours du dossier / exécuter le fichier" & " ; "
                  End If
 
                  If objACE.AccessMask AND FOLDER_LIST_DIRECTORY Then
                     strDroits = strDroits & "Liste du dossier / lecture de données" & " ; "
                  End If
 
                  If objACE.AccessMask AND FILE_READ_ATTRIBUTES Then
                     strDroits = strDroits & "Attributs de lecture" & " ; "
                  End If
 
                  If objACE.AccessMask AND FILE_WRITE_EA Then
                     strDroits = strDroits &  "Création de fichiers / écriture de données" & " ; "
                  End If
 
                  If objACE.AccessMask AND FOLDER_ADD_FILE Then
                     strDroits = strDroits & "Création de dossier / ajout de données" & " ; "
                  End If   
 
                  If objACE.AccessMask AND FILE_WRITE_ATTRIBUTES Then
                     strDroits = strDroits & "Attributs d'écriture" & " ; "
                  End If
 
                  If objACE.AccessMask AND FILE_DELETE Then
                     strDroits = strDroits & "Suppression" & " ; "
                  End If
 
                  If objACE.AccessMask AND FILE_READ_EA Then
                     strDroits = strDroits & "Autorisations de lecture" & ";"
                  End If
WScript.Echo strDroits
 
               End If   
            End If
         Next
 
      Else
         If Err.Number <> 0 Then
            WScript.Echo "ERREUR lors de l'écriture dans le fichier Excel"
            Quitter 1
         End If
      End If
   End If
 
   ' Libération des variables de la fonction
   Set objFolderSecuritySettings = Nothing
   Set intRetVal = Nothing
   Set intControlFlags = Nothing
   Set objSD = Nothing
   Set arrACEs = Nothing
   Set objACE = Nothing
End Sub
''''''''''''''''''''''''''''''




Dernière édition par Cαutex le Mar 10 Avr 2012 - 17:05; édité 1 fois

______________________________________________________
Mes principales réalisations: Cp (batch) et IPSvc (autoit)
Répondre en citant
Message Lister les dossiers avec les droits sur ces dossiers listés 
Merci pour les retours,

Je pensais aussi passer par du VBS mais je ne suis pas un expert. En gros, je suis débutant niveau 0,1 ^^

Il faudrait d'ailleurs qu'une fenêtre s'ouvre indiquant les droits et ça je ne sais pas comment faire ! ! !

Pas facile comme demande je sais...




______________________________________________________
-Il n'y a qu'en affrontant les plus forts que l'on progresse-

Visiter le site web du posteur
Répondre en citant
Message Lister les dossiers avec les droits sur ces dossiers listés 
oui comme Darkbatcher ! essai d'écrire dedans si ça passe pas c'est que tu n'a pas les droits Sad je recherche vite fait après je te dit Mr. Green




______________________________________________________


Répondre en citant
Message Lister les dossiers avec les droits sur ces dossiers listés 
Salut,

Je vais essayer de te faire une commande externe en Autoit dans la journée.

A+



Dernière édition par sablier94 le Lun 17 Oct 2011 - 10:09; édité 2 fois

______________________________________________________
Répondre en citant
Message Lister les dossiers avec les droits sur ces dossiers listés 
Salut, merci beaucoup.

J'en demandais pas tant !

Si tu peux après la création m'expliquer en détail la démarche, cela m’intéresserais aussi.

Je ne veux pas être ignorant d'un cadeau que je ne comprends lol ^^

Mr. Green Mr. Green Mr. Green Mr. Green




______________________________________________________
-Il n'y a qu'en affrontant les plus forts que l'on progresse-

Visiter le site web du posteur
Répondre en citant
Message Lister les dossiers avec les droits sur ces dossiers listés 
Pas de problème mais pour l'instant, j'ai essayé avec la fonction FileGetAttrib en Autoit mais je n'ai pas compris pourquoi je n'arrive pas à faire passer le chemin en paramètre. Surprised

Pourtant je l'ai déjà fait dans un autre programme. Je te tiens au courant.

Pour le moment j'ai ce code. Il devrait marcher (vu qu'il vient de SkyCleaner) mais je n'arrive pas à faire passer le chemin en paramètre...

Code:
Global $CheminDossier

;Récupération des paramètres
If $CMDLine[0] > 0 Then ; vérification si paramètre
    $CheminDossier = $CMDLine[1] ;lecture du 1er paramètre
   MsgBox(64,"", FileGetAttrib($CheminDossier))
Else
    msgbox(0,"Erreur","Vous devez indiquer le chemin en paramètre")
EndIf


J'abandonne pour le moment mais je vais trouver une solution.




______________________________________________________
Répondre en citant
Message Lister les dossiers avec les droits sur ces dossiers listés 
Cela semblait bien parti...

Si de mon coté, je trouve quelquechose je vous tiens tous au courant

Merci encore




______________________________________________________
-Il n'y a qu'en affrontant les plus forts que l'on progresse-

Visiter le site web du posteur
Message Lister les dossiers avec les droits sur ces dossiers listés 


Montrer les messages depuis:
Répondre au sujet Page 1 sur 1
  



Index | créer un forum | Forum gratuit d’entraide | Annuaire des forums gratuits | Signaler une violation | Conditions générales d'utilisation
Copyright 2008 - 2016 // Batch