Bonjour,

J'essaie désespèrément d'exécuter un script VB depuis une page PHP sur un intranet. Les actions voulues sont les suivantes :
- l'utilisateur ouvre un page PHP
- celle-ci déclenche sur le serveur l'exécution d'un script VB
- ce script VB ouvre un fichier PPT du serveur et le modifie, puis l'enregistre
- l'utilisateur peut alors télécharger ce fichier PPT.

Le problème est que cela marche si j'exécute ma page PHP en ligne de commande, mais pas si j'y accède depuis un navigateur.
Ma page PHP exécute la commande suivante (même si ce n'est pas la question ici) :
"shell_exec("generationPPT.bat");"

et le BATCH generationPPT.bat contient
"wscript PPT.vbs"

Ce fichier wscript.vbs contient par exemple (c'est ici un test, j'essaie juste de créer un fichier que j'enregistre sur le DD) :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
objName = "PowerPoint.Application"
Set ppto = CreateObject(objName)
ppto.Visible = True
ppto.Activate
Set pptDoc = ppto.Presentations.Add
pptDoc.SaveAs "\testfinal.ppt"
J'ai l'impression que si j'exécute en ligne de commande ("php monfichierphp.php"), cela marche parce que le script VBS peut accéder à l'arborescence de mon disque dur. En revanche, si j'ouvre la page PHP depuis un navigateur, j'ai l'impression que le script, bien qu'exécuté depuis un BAT (lancé par le fichier PHP), prend en quelques sortes le contexte d'une navigation web et ne peut plus accéder au disque dur.
J'essaie alors d'accéder aux fichiers que je veux ouvrir ou enregistrer par une URL (genre localhost/PPT.ppt) mais ça me renvoie une erreur.

Tout ça pour demander si, en VB, il est possible d'ouvrir un fichier PPT par une URL, et éventuellement d'enregistrer un fichier par une URL, ou sinon de garder l'accès au disque dur ?