Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2859 connectés 

  FORUM HardWare.fr
  Programmation
  Shell/Batch

  [Batch Dos][Résolu] cacher l'invite de commande

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Batch Dos][Résolu] cacher l'invite de commande

n°1441676
jambon
Posté le 13-09-2006 à 11:57:26  profilanswer
 

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 cité 1 fois
Message édité par jambon le 16-09-2006 à 11:23:57
mood
Publicité
Posté le 13-09-2006 à 11:57:26  profilanswer
 

n°1441683
Elmoricq
Modérateur
Posté le 13-09-2006 à 12:05:14  profilanswer
 

Eliminer l'utilisation du batch pour adopter une méthodologie plus moderne, comme le vbs ? [:moule_bite]
 
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.

n°1441716
jambon
Posté le 13-09-2006 à 12:51:00  profilanswer
 

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?


Message édité par jambon le 13-09-2006 à 12:51:20
n°1441748
Elmoricq
Modérateur
Posté le 13-09-2006 à 14:07:11  profilanswer
 

Oui.
 

Set WshShell = WScript.CreateObject("WScript.Shell" )
WshShell.Run("un_programme_ou_un_script_quelconque avec ses arguments" )


 
Ou bien, pour une commande interne de l'interpréteur de commande (le DOS n'existe plus hein) :
 

Set WshShell = WScript.CreateObject("WScript.Shell" )
WshShell.Run("cmd /c une_commande_quelconque et ses arguments" )


Message édité par Elmoricq le 13-09-2006 à 14:07:52
n°1441752
wackevat
Posté le 13-09-2006 à 14:10:33  profilanswer
 

jambon a écrit :


je développe un .bat en ce moment et j'aimerai que son exécution soit cachée.


Juste pour info, Google pour HiddenConsole.exe.

n°1442136
jambon
Posté le 14-09-2006 à 00:46:20  profilanswer
 

ok Elmoricq, mon batch vbs fontionne.
Le problème est qu'il s'affiche comme le .bat


Message édité par jambon le 14-09-2006 à 00:46:37
n°1442154
Elmoricq
Modérateur
Posté le 14-09-2006 à 07:00:35  profilanswer
 

Non mais si tu exécutes des cmd /c, c'est normal. :o

n°1442371
aldo13000
Posté le 14-09-2006 à 12:34:14  profilanswer
 

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 .
 


---------------

n°1442409
Elmoricq
Modérateur
Posté le 14-09-2006 à 13:33:19  profilanswer
 
n°1442432
aldo13000
Posté le 14-09-2006 à 14:05:26  profilanswer
 


 
Je vais pas te l'apprendre mais avec ShellExecute() on peut faire pareil .


---------------

mood
Publicité
Posté le 14-09-2006 à 14:05:26  profilanswer
 

n°1443247
jambon
Posté le 15-09-2006 à 20:00:48  profilanswer
 

yes merci, je vais essayer ça


Message édité par jambon le 15-09-2006 à 20:09:06
n°1443265
jambon
Posté le 15-09-2006 à 20:50:01  profilanswer
 

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)

Message cité 1 fois
Message édité par jambon le 15-09-2006 à 20:50:54
n°1443326
aldo13000
Posté le 16-09-2006 à 01:54:16  profilanswer
 

jambon a écrit :

WshShell.Run(macommande, SW_HIDE)


 
A remplacer par  :
 
WshShell.Run macommande, SW_HIDE ,true
 


---------------

n°1443350
jambon
Posté le 16-09-2006 à 11:23:24  profilanswer
 

Merci ça marche nickel!!!

n°1508133
helios44
Posté le 29-01-2007 à 10:21:45  profilanswer
 

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


Message édité par helios44 le 29-01-2007 à 11:41:41
n°1508157
helios44
Posté le 29-01-2007 à 11:40:47  profilanswer
 

bon bah, en faisaint ceci, ca a lair de marcher :
 
Set WshShell = WScript.CreateObject("WScript.Shell" )
WshShell.Run "fichier.bat", SH_WIDE
 

n°1508487
helios44
Posté le 30-01-2007 à 08:48:08  profilanswer
 


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

n°1523918
le_relou
Posté le 05-03-2007 à 16:47:01  profilanswer
 

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 :??:


Message édité par le_relou le 05-03-2007 à 16:50:45
n°1524080
blastkille​r
Posté le 05-03-2007 à 20:11:47  profilanswer
 

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

n°1524138
le_relou
Posté le 06-03-2007 à 08:22:13  profilanswer
 

sorry me suis tromper de categorie :jap:


Message édité par le_relou le 06-03-2007 à 08:27:00
n°1623120
Coolnut
Posté le 12-10-2007 à 17:02:58  profilanswer
 

wackevat a écrit :


Juste pour info, Google pour HiddenConsole.exe.


 
Salut  :jap:  
 
Je ne trouve pas de lien pour télécharger HiddenConsole sur google, tu n'aurai pas un lien pour la télécharger ?


Message édité par Coolnut le 12-10-2007 à 17:20:03
mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Shell/Batch

  [Batch Dos][Résolu] cacher l'invite de commande

 

Sujets relatifs
[Résolu]Se connecter à une interbase distante depuis PHP[Résolu] Casse tête de .dll
Appel aide.chm par une commande javascriptUne équivalence à la commande "echo"
[BATCH] Need aide batch touchant au PATH ! Je connais pas les batch :<[Résolu] Problème avec count et distinct
[Résolu] [SQL 2005] Copier les valeurs d'une table à une autre[résolu]Encodage de caractère
[Résolu][ASP.NET 2.0][C#] Plusieurs load pour une meme pageRésolu [Javascript] Agir dans Popup après fermeture de la fenetre mère
Plus de sujets relatifs à : [Batch Dos][Résolu] cacher l'invite de commande


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR