Hallo!
Ich wuerde gerne direkt aus php raus auf dem Server eine pdf-Datei zum Drucker senden (es geht um ein Intranetprogramm).
Die Umgebung ist ein Win2000 Pro Server mit IIS (wobei ich aber auch schon mit Apache auf Win XP mit sehr aehnlichem Ergebnis getestet habe).
Zu diesem Zweck erstelle ich mir eine bat-Datei, in welche ich folgende Zeile (pro zu druckender Datei) schreibe:
"C:\Programme\Gsview\gsview\gsprint.exe" -printer "Drucker Name" -grey "datei.pdf"
Diese Batchdatei druckt auch tatsaechlich, wenn man sie auf dem Server ausfuehrt.
Sobald ich aber die Batchdatei per system, exec, shell_exec, passthru oder einfach nur `backticks` aufrufe geht nichts mehr. Manchmal kommt noch die Fehlermeldung:
Couldn't open Windows GDI printer
Der IIS laeuft unter dem selben user wie die Konsole von der aus getestet wurde, daran kann es also nicht liegen.
Wenn man das php-script (in welchem die batch-Datei aufgerufen wird) direkt unter der Konsole an php.exe weitergibt, klappt es auch.
Die doppelten '\' backslashes, die bei system auf der php.net-Seite empfohlen werden, habe ich auch schon ausprobiert ... leider ohne Erfolg.
Angefangen hatten wir mit dem Versuch, ueber Acrobat Reader zu drucken, was genau mit den selben Symptomen fehlschlug ... ghostview/gsprint ist natuerlich die edlere Loesung, von daher wuerde ich das gern beibehalten ...
Hat einer eine Idee, wie man das loesen koennte?
Gruss
Daniel
Ich wuerde gerne direkt aus php raus auf dem Server eine pdf-Datei zum Drucker senden (es geht um ein Intranetprogramm).
Die Umgebung ist ein Win2000 Pro Server mit IIS (wobei ich aber auch schon mit Apache auf Win XP mit sehr aehnlichem Ergebnis getestet habe).
Zu diesem Zweck erstelle ich mir eine bat-Datei, in welche ich folgende Zeile (pro zu druckender Datei) schreibe:
"C:\Programme\Gsview\gsview\gsprint.exe" -printer "Drucker Name" -grey "datei.pdf"
Diese Batchdatei druckt auch tatsaechlich, wenn man sie auf dem Server ausfuehrt.
Sobald ich aber die Batchdatei per system, exec, shell_exec, passthru oder einfach nur `backticks` aufrufe geht nichts mehr. Manchmal kommt noch die Fehlermeldung:
Couldn't open Windows GDI printer
Der IIS laeuft unter dem selben user wie die Konsole von der aus getestet wurde, daran kann es also nicht liegen.
Wenn man das php-script (in welchem die batch-Datei aufgerufen wird) direkt unter der Konsole an php.exe weitergibt, klappt es auch.
Die doppelten '\' backslashes, die bei system auf der php.net-Seite empfohlen werden, habe ich auch schon ausprobiert ... leider ohne Erfolg.
Angefangen hatten wir mit dem Versuch, ueber Acrobat Reader zu drucken, was genau mit den selben Symptomen fehlschlug ... ghostview/gsprint ist natuerlich die edlere Loesung, von daher wuerde ich das gern beibehalten ...
Hat einer eine Idee, wie man das loesen koennte?
Gruss
Daniel