Ich versuche, ein VBScript von PHP (unter FastCGI/IIS ausgeführt), die eine XLS-Datei ändert ausführen.VBScript Excel Workbooks.Open funktioniert nicht, wenn von PHP-Website ausgeführt
Das VBScript sieht wie folgt aus:
...
Dim objXLApp, objXLWb, objXLWs
Set objXLApp = CreateObject("Excel.Application")
objXLApp.Visible = False
objXLApp.DisplayAlerts = False
Set objXLWb = objXLApp.Workbooks.Open(FilePath)
Set objXLWs = objXLWb.Worksheets(1)
objXLWs.Cells(1, 1) = "This is a test!"
objXLWb.Save
...
Die test.php Datei sieht wie folgt aus:
<?php
echo shell_exec("cscript.exe Test.vbs test.xls");
Wenn ich eine Konsole öffnen und laufen php test.php
es ändert korrekt die xls-Datei, aber wenn Ich setze die xls Datei zurück und besuche test.php in einem Browserfenster, es tut nichts. Wenn man mit WShell.Echo herumfummelt, scheint es, als stürze/stoppt es bei der objXLApp.Workbooks.Open(FilePath)
Zeile.
Wenn ich diesen Code auf meinem lokalen Computer mit php -S
ausführen funktioniert es perfekt, es ist nur, wenn unter IIS auf dem Windows Server 2012-Host ausgeführt wird, dass es nicht funktioniert.
Was verursacht das? Gibt es eine Möglichkeit, es zu beheben? Vielen Dank!
Hat der Server haben Excel installiert? –