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

  FORUM HardWare.fr
  Programmation
  PHP

  Lancer un exe en passant des paramètres 1 à 1

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Lancer un exe en passant des paramètres 1 à 1

n°2197817
thekingsky
Posté le 16-07-2013 à 22:14:45  profilanswer
 

Bonjour à tous,
 
Je galère un problème : je dois lancer un .exe via mon script php mais le problème c'est que ce fichier exe attend des paramètres en ligne de commande et non en argument.
 
J'ai donc trouvé une solution de contournement en passant par un script vbs qui lance mon exe et passe les paramètres 1 à 1 :

Code :
  1. Set objShell = WScript.CreateObject("WScript.Shell" )
  2. objShell.Run "toto.exe"
  3. WScript.Sleep 300
  4. objShell.SendKeys "tata.csv"
  5. objShell.SendKeys "{Enter}"
  6. WScript.Sleep 300
  7. objShell.SendKeys "mark"
  8. objShell.SendKeys "{Enter}"


 
Mais du coup je n'arrive pas à lancer ce script en php via exec ou system il ne lance rien.
 
Help please !
 
soit je reste sur le .exe mais faut que je trouve un moyen de passer 1 à 1 les paramètres, soit je passe par le vbs mais faut que j'arrive à le lancer sur le serveur :(
 
Merci bcp :)

mood
Publicité
Posté le 16-07-2013 à 22:14:45  profilanswer
 

n°2197844
Farian
Posté le 17-07-2013 à 09:37:37  profilanswer
 

Bonjour !
 
J'imagine que quand vous dites "en ligne de commande", vous voulez dire qu'ils sont entrés par l'opérateur ? (car "en ligne commande" ou "en argument", pour moi, c'est la même chose).
 
Si c'est le cas, pourquoi ne pas faire un exécutable qui fait la même chose que votre script vbs ? Cet exécutable récupère les arguments et les passe à l'exécutable qui vient d'être lancé, et cela devrait faire l'affaire, non ?
 
Ceci dit, comme je ne connais ni php, ni vbs, ce que je dis n'est peut-être pas pertinent.
 
Bonne continuation !

n°2197926
thekingsky
Posté le 17-07-2013 à 16:02:29  profilanswer
 

Oui je voulais dire entré par l'opérateur.
 
C'est une idée mais je dois pouvoir modifier dynamiquement les variables qu e je passe à mon .exe. Le vbs me permettait de faire cela :/

n°2197931
thekingsky
Posté le 17-07-2013 à 17:25:44  profilanswer
 

J'avance un peu, j'ai testé avec :

Code :
  1. $WshShell = new COM("WScript.Shell" );
  2. $output = $WshShell->Exec("C:/wamp/www/toto/Sourcesexe/go.vbs" )->StdOut->ReadAll;


 
En lancant la page j'ai une erreur :  
com_exception: <b>Source:</b> WshShell.Exec<br/><b>Description:</b> C:/wamp/www/toto/Sourcesexe/go.vbs n’est pas une application Win32 valide. in C:\wamp\www\toto\testexe.php on line 12
 
(Je précise quand lancant le .vbs à la main en double cliquant ca passe sans problème)
 
Une idée svp  ? :(


Message édité par thekingsky le 17-07-2013 à 17:27:23
n°2198266
rufo
Pas me confondre avec Lycos!
Posté le 22-07-2013 à 10:53:50  profilanswer
 

La lib COM est bien disponible (activée) sur le serveur (sous Windows bien entendu) ?
 
A noter que passer par COM, c'est pas top. Vaudrait mieux passer par la fonction php shell_exec() et faire exécuter directement le VBS par son interpréteur ;)


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Lancer un exe en passant des paramètres 1 à 1

 

Sujets relatifs
VBA Excel 2010: Lancer un fichier .bat / copier TOUT contenu d'1 .xtxComment lancer une fonction php en ajax?
ASP.NET Lancer tache asynchrone pendant refresh d'updatepanel[C# URGENT] lancer un exe avec un compte et un pwd ecrit dans le code
[Powershell] lancer une machine virtuelle automatiquementnombre des paramètres dans une fonction
Script erroné en passant au php5.4Lancer deux fois le même .exe
Connexion FTP en passant par un proxyTransfert de paramètres en PHP !
Plus de sujets relatifs à : Lancer un exe en passant des paramètres 1 à 1


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