Executer un ".vbs" à partir d'une page web

Executer un ".vbs" à partir d'une page web - VB/VBA/VBS - Programmation

Marsh Posté le 01-07-2009 à 12:15:40    

Bonjour,  
 
Je dispose de plusieurs fichier *.vbs dans un dossier. (ces fichiers ont des fonctions diverses, installation de logiciel, création d'odbc, etc ...)
 
je voudrais faire une page web depuis laquelle je pourrais exécuter ces fichier .vbs
 
PS : Lorsque je fais un lien <a href> ça m'affiche le contenu du fichier, ça ne l'exécute pas.
 
Comment faire ?
Pouvez-vous m'aider ?
 
Merci  :jap:


Message édité par antolionux le 01-07-2009 à 12:17:32
Reply

Marsh Posté le 01-07-2009 à 12:15:40   

Reply

Marsh Posté le 01-07-2009 à 14:33:25    

Voici une solution qui marche avec un lien ou avec un bouton

<html>
<head>
<script language="VBScript">
Public Sub exec_vbs()
   Set oShell = CreateObject("WScript.Shell" )
   oShell.Run "C:\chemin\test1.vbs"
   Set oShell = Nothing
End sub
</script>
</head>
 
<body>
<a href="javascript:(function(){exec_vbs();})()">Test</a>
<br><input type="button" value="Test" onclick="exec_vbs()">
</body>
</html>

Le lancement n'est pas toujours immédiat, il peut prendre deux à dix secondes.

Reply

Marsh Posté le 01-07-2009 à 21:18:05    

Merci pour ta réponse, je pourrais essayer ton code dès demain :-)

Reply

Marsh Posté le 02-07-2009 à 08:51:06    

Je viens de faire un test mais ça ne semble pas fonctionner, mes scripts ne s'exécutent pas.

Reply

Marsh Posté le 02-07-2009 à 09:45:50    

Ca marche chez moi, de deux endroits différents, deux systèmes différents.
Donc, il faudrait tester avec un programme hyper-simple, genre une seule ligne contenant wscript.echo "coucou", et mettre ce script en local dans un répertoire dont le chemin est simple (sans espace, ni caractère hors de l'alphabet anglais). A l'exécution, le navigateur demande bien sûr l'autorisation d'utiliser des ActiveX et il faut répondre "oui". Peut-être que dans certaines configurations le navigateur l'interdit sans proposer de lever cette interdiction. Il faudrait alors voir les options de sécurité du navigateur ou d'autres logiciels de sécurité pouvant empêcher cela.
Par ailleurs, si cela ne marche, il devrait y avoir un message d'erreur quelque part.
Bonne chance !

Reply

Marsh Posté le 02-07-2009 à 11:48:57    

Après plusieurs test, l'ouverture d'un exécutable tel que calc.exe ou cmd.exe fonctionne sans aucun problème qu'ils soit dans systeme32 où à l'emplacement des mes scripts.
 
Mon script lui ne se lance pas. c'est un .bat tout bête qui lance un .vbs
J'ai tenté de convertir mon .bat en .exe, mais ça ne fonctionne pas non plus
 
PS : le contenu du .vbs ne fait que copier un raccourci sur le bureau.

Reply

Marsh Posté le 02-07-2009 à 12:06:10    

Effectivement, pour un ".bat" c'est différent (mais je ne pouvais pas le deviner car ce n'était indiqué nul part dans la question).
Le ".bat" a besoin de cmd.exe (ou command.com pour les anciennes versions de Windows).
Voici une nouvelle version :

<html>
<head>
<script language="VBScript">
Public Sub exec_vbs()
   Set oShell = CreateObject("WScript.Shell" )
   oShell.Run "C:\blabla\echo1.vbs"
   Set oShell = Nothing
End sub
 
Public Sub exec_bat()
   Set oShell = CreateObject("WScript.Shell" )
   oShell.Run "cmd.exe /C C:\blabla\echo1.bat"
   Set oShell = Nothing
End sub
</script>
</head>
 
<body>
<a href="javascript:(function(){exec_vbs();})()">Lance .vbs directement</a>
<br><input type="button" value="Lance .vbs directement" onclick="exec_vbs()">
<p>
<a href="javascript:(function(){exec_bat();})()">Lance .bat</a>
<br><input type="button" value="Lance .bat" onclick="exec_bat()">
</body>
</html>

Reply

Marsh Posté le 02-07-2009 à 12:17:41    

Le .Vbs génère une erreur : chemin d'accès introuvable
Le .bat ne fait rien


Message édité par antolionux le 02-07-2009 à 12:20:35
Reply

Sujets relatifs:

Leave a Replay

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