IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Discussion :

mettre tous les droits sur un fichier


Sujet :

Windows

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Avatar de alpha_one_x86
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2006
    Messages
    411
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2006
    Messages : 411
    Par défaut mettre tous les droits sur un fichier
    Bonjour,
    J'ai besoin de mettre tout les droits à tout le monde sur un fichier (un pipe nommé ici), une sorte de chmod 777 sous windows.
    Je suis null en win32, quelqu'un peu m'aider?

    Merci.

  2. #2
    Expert confirmé
    Avatar de hackoofr
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2009
    Messages
    3 844
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Juin 2009
    Messages : 3 844
    Par défaut

    Peut-être avec la commande Cacls.exe

  3. #3
    Membre éclairé
    Avatar de alpha_one_x86
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2006
    Messages
    411
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2006
    Messages : 411
    Par défaut
    Le code qui semblerai me convenir:
    http://pastebin.com/ZTXCfSk8
    Mais je n'arrive pas à l'appliquer à un pipe nommé. J'aimerai donné tout les droits à l'utilisateur courrant.

  4. #4
    Expert confirmé
    Avatar de hackoofr
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2009
    Messages
    3 844
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Juin 2009
    Messages : 3 844
    Par défaut

    vous pouvez essayer ce petit vbscript : il crée deux répertoires différents c:\Essai avec Contrôle totale et c:\EssaiLectureSeule en lecture seule.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    Dim oFSO,oFld 
    Set oFSO = CreateObject("Scripting.FileSystemObject")
    Dossier = "c:\Essai"
    DossierReadOnly = "c:\EssaiLectureSeule"
    If Not oFSO.FolderExists(Dossier) Then
    'Crée le repertoire c:\Essai
    Set oFld=oFSO.CreateFolder(Dossier)
    end if
    If Not oFSO.FolderExists(DossierReadOnly) Then
    'Crée le repertoire c:\EssaiLectureSeule
    Set oFld=oFSO.CreateFolder(DossierReadOnly)
    end if
    
    Call ControlTotal(Dossier) 'Pour rendre le dossier en contrôle Totale 
    Call LectureSeule(DossierReadOnly) 'Pour rendre le dossier en lecture seule
    
    Function LectureSeule(objet)
    Set Ws = CreateObject("WScript.Shell")
    Set ProcessEnv = Ws.Environment("Process")
    NomUtilisateur = ProcessEnv("USERNAME")
    Command = "%COMSPEC% /c Echo o| cacls "& objet &" /g " & qq(NomUtilisateur) & ":r administrateurs:r"
    Result = ws.Run(Command,0,True) 'exécution de la commande sans afficher la console MS-DOS
    End Function
    
    Function ControlTotal(objet)
    Set Ws = CreateObject("WScript.Shell")
    Set ProcessEnv = Ws.Environment("Process")
    NomUtilisateur = ProcessEnv("USERNAME")
    Command = "%COMSPEC% /c Echo o| cacls "& objet &" /g " & qq(NomUtilisateur) & ":f administrateurs:f"
    Result = ws.Run(Command,0,True) 'exécution de la commande sans afficher la console MS-DOS
    End Function
    
    Function qq(strIn)
        qq = Chr(34) & strIn & Chr(34)
    End Function

  5. #5
    Membre éclairé
    Avatar de alpha_one_x86
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2006
    Messages
    411
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2006
    Messages : 411
    Par défaut
    Je vois bien, pour l'instant il semble bloquer sur un INVALID_HANDLE_VALUE, avec un:
    The system cannot find the file specificed.
    Pourtant le pipe existe bien.

  6. #6
    Rédacteur/Modérateur
    Avatar de Andnotor
    Inscrit en
    Septembre 2008
    Messages
    5 941
    Détails du profil
    Informations personnelles :
    Localisation : Autre

    Informations forums :
    Inscription : Septembre 2008
    Messages : 5 941
    Par défaut
    Les droits sont définis à la création du pipe. Le paramètre lpSecurityAttributes.

Discussions similaires

  1. Changer les droits sur le fichier Windows
    Par allouchi dans le forum Sécurité
    Réponses: 3
    Dernier message: 05/01/2013, 19h32
  2. [Débutant] modifier les droits sur un fichier
    Par DUDE007 dans le forum Langage
    Réponses: 8
    Dernier message: 09/02/2011, 05h11
  3. script: donner les droits sur un fichier
    Par krashvi dans le forum Windows
    Réponses: 1
    Dernier message: 29/12/2008, 14h07
  4. API connaitre les droits sur un fichier/dossier
    Par cerede2000 dans le forum Windows
    Réponses: 9
    Dernier message: 27/10/2008, 15h17

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo