begin process at 2012 02 17 04:09:09
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Visual Basic 6

 > 

Langages dérivés

 > 

VBScript

 > 

vbs modifier droits acces aux fichiers


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

vbs modifier droits acces aux fichiers

lundi 4 décembre 2006 à 16:51:09 | vbs modifier droits acces aux fichiers

sdisp

Bonjour.

   J'ai un vbs qui crée un fichier txt dans un dossier puis qui le déplace dans un autre, une fois que le remplissage de mon fichier et terminé.

Le dossier dans lequel je crée le fichier a les droits admin, et mon fichier a donc c'est droit.

Mon problème est quand je fais la copie, il garde les droits du 1er répertoire et non ceux que j'ai défini dans le 2nd.

Je souhaiterai donc ajouter l'utilisateur "tout le monde" avec les droits de modification au fichier une fois déplacées dans l'autre dossier.

J'ai pus trouver quelque code sur ce site mais vraiment compliqué ( permettant la consultation/ajout/modification des droits )

Si quelqu'un pouvais m'aider?


Merci.

Bonne journée
mardi 5 décembre 2006 à 22:57:59 | Re : vbs modifier droits acces aux fichiers

JMO

Membre Club


 Bonsoir à tous


Solution en employant wmi.
[ Lien ]

jean-marc
jeudi 7 décembre 2006 à 14:07:23 | Re : vbs modifier droits acces aux fichiers

sdisp

Bonjour.

Merci jean-marc je vais me pancher la dessus ca a l'air d'être ce que je cherche.

Si jamais, des exemple ou d'autres idées sont toujours les bien venu.

Bonne journée
vendredi 15 décembre 2006 à 09:58:37 | Re : vbs modifier droits acces aux fichiers

sdisp

Bonjour.

Après plusieurs recherches, j'en suis arrivé à cela:

'Changement permision sur le fichier a recuperer

Dim objLocator : Set objLocator = CreateObject("wbemscripting.swbemlocator")

Dim objServices : Set objServices = objLocator.ConnectServer("")
objServices.security_.privileges.AddAsString("SeSecurityPrivilege")

Dim StrRepPath = "d:\test\"
Dim StrNomFichier = "test.txt"
Dim FilePath : FilePath= StrRepPath & StrNomFichier

Dim objSecDescriptor : Set objSecDescriptor=GetObject("Winmgmts:{impersonationlevel=impersonate}!root/cimv2:Win32_SecurityDescriptor").Spawninstance_()

objSecDescriptor.ControlFlags =  32772

''allow everyone
Dim ACE1 : set ACE1 = SetACE(1245631,3,0,SetTrustee(vbNULL,"Everyone",Array(1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0,0)))

''allow admin full access
Dim ACE2 : set ACE2 = SetACE(2032127,3,0,SetTrustee(vbNULL,"Administrators",Array(1,2,0,0,0,0,0,5,32,0,0,0,32,2,0,0)))

objSecDescriptor.DACL = Array( ACE1, ACE2)

Dim  obj : set obj = objServices.get( "CIM_DataFile='" & FilePath & "'" )

Dim objClass : Set objClass = objServices.Get("CIM_DataFile")
Dim objInParam : Set objInParam =obj.Methods_("ChangeSecurityPermissions").inParameters.SpawnInstance_()

objInParam.Option = 4 ''DACL
objInParam.SecurityDescriptor = objSecDescriptor

Dim objOutParams :Set objOutParams = obj.ExecMethod_("ChangeSecurityPermissions", objInParam)

Function SetTrustee(strDomain, strName, SID)   
     Dim objTrustee : set objTrustee=getObject("Winmgmts:{impersonationlevel=impersonate}!root/cimv2:Win32_Trustee").Spawninstance_
     objTrustee.Domain = strDomain
     objTrustee.Name = strName
     objTrustee.SID = SID
     set SetTrustee = objTrustee
End Function

Function SetACE(AccessMask, AceFlags, AceType, objTrustee) 
  Dim objACE : set objACE=getObject("Winmgmts:{impersonationlevel=impersonate}!root/cimv2:Win32_Ace").Spawninstance_
  objACE.AccessMask = AccessMask
  objACE.AceFlags = AceFlags
  objACE.AceType = AceType
  objACE.Trustee = objTrustee
  set SetACE = objACE
End Function


Le problème que j'ai est que cela fonctionne sur mon poste en windows 2000 Pro mais cela ne fonctionne pas sur du windows 2003 serveur.
Quelqu'un aurait-il une idée d'où cela pourrait venir?

Merci.

Bonne journée.



Cette discussion est classée dans : fichier, vbs, dossier, modifier, droits


Répondre à ce message

Sujets en rapport avec ce message

vbs : droits utilisateurs sur dossier [ par chmey671 ] Bonjour,je suis novice en développement vbs et je me serts pas mal de script existant pour arriver à écrire ce dont j'ai besoin au boulot bien que je ouvrir un fichier et le modifier [ par bigboss200000 ] bonjour.je souhaite modifier une ligne d'un fichier texte(txt).est ce possible en vbs ou alors dois je executer dans mon script vbs un script en perl [VBS] Zipper un dossier ou rechercher les noms des fichiers qui se trouvent dans un dossier [ par tH3 GuItArIsTe 666 ] salut tout le monde !mnih ? ("bien ?")1)je voudrais savoir si c'était possible de savoir le noms des fichiers qui se trouvent dans un dossier ou bien créer un évenement avec vbs lors de l'ajout d'un fichier dans un dossier [ par berryj ] HelloJe suis en recherche, je voudrais lancer une commande bat lors de l'ajout d'un fichier dans un dossier spécifique.Tout ça en vbs de préférence sa (VB6/VBS) Modifier la date de modification d'un fichier [ par asecher ] Bonjour,J'ai bien trouvé des codes en C++ pour modifier la propriété "DateModified" d'un fichier (équivalent de la commande touch en Unix), mais je ne changer les droits des fichiers ? [ par le1scorpion1noir ] salut a tous je voulais savoir comment je peux modifier les droits d'un fichier a laide de Visual basic pour qu'on peux pas modifier ce fichier que s Tester nom de fichier [ par aurelien2723 ] Salut!!Projet en Visual Basic 6Je scanne un dossier pour placer tous les noms des fichiers de ce dossier dansun tableau. Cependant, j'aimerais vérifie Executé un fichier avec VBScript [ par bidou72 ] Salut Je commence la programation avec le bloc note ou j'entre de simple commance comme redémarrer un ordi ou ouvrir ces lecteur et et ke je transform Créer et compléter un fichier Excel en VBS [ par johann91 ] Bonjour,Je souhaiterais créer un fichier excel et le compléter en VBS. Je suis novice en VBS, et lors de mes recherches, je n'ai trouvé que des codes


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,530 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales