[vbs][résolu] desactiver prompt avec une valeur par defaut

desactiver prompt avec une valeur par defaut [vbs][résolu] - VB/VBA/VBS - Programmation

Marsh Posté le 03-08-2006 à 10:40:37    

bonjour,
 
J'ai un morceau de script de ce style la:
 
 Commandline2="cacls " & RepPerso & " /C /P Administrateurs:F"  'Supprimer "Tout le monde"
  f.Run(CommandLine2, 1, True)
 
Mais à son lancement ca m'ouvre une fenetre cmd qui me dit : Êtes-vous sûr ? (O/N) ?
 
J'aimerai que par defaut ca reponde O et que je ne vois pas cette fenetre...
 
Quelqu'un aurait il une idée s'il vous plait ?


Message édité par morissefoot le 03-08-2006 à 11:08:07
Reply

Marsh Posté le 03-08-2006 à 10:40:37   

Reply

Marsh Posté le 03-08-2006 à 10:42:15    

Ton application peut peut etre avoir un displayalerts à false ?

Reply

Marsh Posté le 03-08-2006 à 10:46:20    

Je ne connais pas cette commande, je vais l'étudier, mais en fait le but est de supprimer, à l'aide de la commande cacls, l'utilisateur "tout le monde" sur les droits d'un repertoire partagé.

Reply

Marsh Posté le 03-08-2006 à 11:07:09    

Voila la commande a marquer :
 
Commandline2="echo O| cacls " & RepPerso & " /C /P Administrateurs:F"  
f.Run(CommandLine2, 1, True)
 
C'était tout bete mais il fallait trouver

Reply

Marsh Posté le 03-08-2006 à 11:08:04    

morissefoot a écrit :

Je ne connais pas cette commande, je vais l'étudier, mais en fait le but est de supprimer, à l'aide de la commande cacls, l'utilisateur "tout le monde" sur les droits d'un repertoire partagé.


la fonction displayalerts sert à prévenir ou non l'utilisateur dans une opération critique.  
Pour dire Oui à chaque fois, tu peux essayer un sendkeys o...

Reply

Marsh Posté le 03-08-2006 à 11:16:41    

jpcheck a écrit :

la fonction displayalerts sert à prévenir ou non l'utilisateur dans une opération critique.  
Pour dire Oui à chaque fois, tu peux essayer un sendkeys o...


tu as mis résolu, est-ce que tu peux laisser pour la postérité ta solution stp :)

Reply

Marsh Posté le 03-08-2006 à 11:23:33    

Je l'ai marqué plus haut.
 
En fait il faut rajouter : "echo o|" avant la ligne de commande. o pour oui, n pour non, y pour yes et n pour no. Il faut faire attention à la langue du prompt.
 
echo O| cacls " & RepPerso & " /C /P Administrateurs:F

Reply

Marsh Posté le 03-08-2006 à 12:12:40    

Meilleur solution encore (Code a inserer dans un fichier .vbs)
-----------------------
 
'Création d'un fichier .bat permettant l'execution des scripts concernant les droits sur les repertoires personnels  
  Set fso = CreateObject("Scripting.FileSystemObject" )
  Set f = fso.OpenTextFile("changeperms.bat",2, True)
  f.WriteLine "echo o| net share " & strHomeDir & "$=" & RepPerso 'test
  f.WriteLine "echo o| cacls " & RepPerso & " /C /P Administrateurs:F" 'Supprime Tout le monde et l'heritage
  f.WriteLine "echo o| cacls " & RepPerso & " /T /E /P Administrateurs:F" 'Donne le droit Contrôle total au groupe Administrateur de ton domaine
  f.WriteLine "echo o| cacls " & RepPerso & " /T /E /P " & strHomeDir & ":F" 'Donne le droit Contrôle total à l'utilisateur sur son répertoire perso
  f.close
  WshShell.Run "changeperms.bat",8,true
  Set f = fso.GetFile("changeperms.bat" )
  f.delete


Message édité par morissefoot le 03-08-2006 à 12:13:13
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed