cacher l'invite de commande [Batch Dos][Résolu] - Shell/Batch - Programmation
Marsh Posté le 13-09-2006 à 12:05:14
Eliminer l'utilisation du batch pour adopter une méthodologie plus moderne, comme le vbs ?
Sauf erreur tu ne peux pas masquer cette fameuse fenêtre, dans la mesure où ton .BAT doit être interprété, et que cette fenêtre, c'est celle de l'interpréteur.
Marsh Posté le 13-09-2006 à 12:51:00
ok, alors dans ce cas ma question est la suivante:
y a t-il une fonction (type command("ma commande dos" ))
qui permet de réaliser les commandes Dos en vbscript?
Marsh Posté le 13-09-2006 à 14:07:11
Oui.
Set WshShell = WScript.CreateObject("WScript.Shell" ) |
Ou bien, pour une commande interne de l'interpréteur de commande (le DOS n'existe plus hein) :
Set WshShell = WScript.CreateObject("WScript.Shell" ) |
Marsh Posté le 13-09-2006 à 14:10:33
jambon a écrit : |
Juste pour info, Google pour HiddenConsole.exe.
Marsh Posté le 14-09-2006 à 00:46:20
ok Elmoricq, mon batch vbs fontionne.
Le problème est qu'il s'affiche comme le .bat
Marsh Posté le 14-09-2006 à 12:34:14
Salut ,
Dans le VBS tu as essayé un truc du genre :
macommande ="tonfichier.bat" (ou "cmd /c dir *.* > c:\mestest\logvbs.txt)
Ensuite dans l'appel a WshShell.Run en 1er parametre : macommande
et en 2eme SW_HIDE .
Marsh Posté le 14-09-2006 à 14:05:26
Elmoricq a écrit : Cool ça |
Je vais pas te l'apprendre mais avec ShellExecute() on peut faire pareil .
Marsh Posté le 15-09-2006 à 20:00:48
yes merci, je vais essayer ça
Marsh Posté le 15-09-2006 à 20:50:01
Cette méthode marche vachement bien pour moi car la fenêtre DOS ne fait que "flacher" mais si je mets SW_HIDE ou pas ça change rien.
J'ai du mal mettre le 2ème argument; je l'ai surchargé avec +, la j'ai aucune erreur mais tjs le même comportement.
Comment doit-on le mettre pour que je n'ai pas l'apparition de ces fenêtres?
PS: j'ai essayè de le faire comme ça mais il y a une erreur
WshShell.Run(macommande, SW_HIDE)
Marsh Posté le 16-09-2006 à 01:54:16
jambon a écrit : WshShell.Run(macommande, SW_HIDE) |
A remplacer par :
WshShell.Run macommande, SW_HIDE ,true
Marsh Posté le 29-01-2007 à 10:21:45
Cela ne fonctionne pas chez moi :-(
J'ai essayé deux versions :
Set WshShell = WScript.CreateObject("WScript.Shell" )
WshShell.Run fichier.bat, SW_HIDE,true
et
Set WshShell = WScript.CreateObject("WScript.Shell" )
WshShell.Run cmd /c fichier.bat, SW_HIDE,true
Merci de votre aide
Marsh Posté le 29-01-2007 à 11:40:47
bon bah, en faisaint ceci, ca a lair de marcher :
Set WshShell = WScript.CreateObject("WScript.Shell" )
WshShell.Run "fichier.bat", SH_WIDE
Marsh Posté le 30-01-2007 à 08:48:08
eh bien en fait, non ca ne marche pas...il me mets une erreur en ligne 2 caractere 1 : le document ne peut etre trouvé. Pourtant il est sur le bureau....je comprends pas
Marsh Posté le 05-03-2007 à 16:47:01
SH_WIDE est une variable numerique tu peux mettre 1 a la place puis ,true
donc
WshShell.Run ("fichier.bat", 1, true)
perso j'ai un petit PB:
Return = WshShell.run("C:\TEMP\monfichier.exe /user:domain\administrateur /password:et_le_mot_de_passe_qui_va_bien", 1, true)
mais sa passe pas
une idée je vois pas ou je me plant
Marsh Posté le 05-03-2007 à 20:11:47
Sinon il y a le petit programme CMDOW qui permet de cacher n'importe quel fenetre :
http://www.commandline.co.uk/cmdow/
exemple : cmdow /run /hid fichier.bat
Marsh Posté le 06-03-2007 à 08:22:13
sorry me suis tromper de categorie
Marsh Posté le 12-10-2007 à 17:02:58
wackevat a écrit : |
Salut
Je ne trouve pas de lien pour télécharger HiddenConsole sur google, tu n'aurai pas un lien pour la télécharger ?
Marsh Posté le 13-09-2006 à 11:57:26
Salut,
je développe un .bat en ce moment et j'aimerai que son exécution soit cachée.
J'ai essayé avec les @ devant les commandes mais la fenêtre apparaît quand même,
est-il possible de la rendre plus discrète...?
Message édité par jambon le 16-09-2006 à 11:23:57