我正在使用shell_exec()通過Adobe Reader使用以下PHP將存儲在局域網上的PDF自動打印到LAN上的打印機上:代碼(全部在一行上):使用PHP shell_exec自動在網絡上打印PDF到網絡打印機不工作
shell_exec("'C:\Program Files\Adobe\Reader 10.0\Reader\AcroRd32.exe'
/t \\hnurensp01\RepairTickets\179694.pdf \\hnurenfp01\Accounts_FS-1128MFP");
我預計這將要做的就是打開Adobe Reader時,打開網絡上的PDF和打印到網絡打印機。當用這一行運行PHP腳本時,它不會打開Adobe Reader或打印它。但是,當我複製該代碼並在命令提示符(客戶端)執行時,它可以工作並打印。命令行只有輕微的修改(全部在一行上):
"C:\Program Files\Adobe\Reader 10.0\Reader\AcroRd32.exe"
/t \\hnurensp01\RepairTickets\179694.pdf \\hnurenfp01\Accounts_FS-1128MFP
是否與在服務器端執行的PHP腳本有關?我試着在服務器上運行相同的命令行,它也可以工作。它似乎只是它通過PHP時,它什麼都不做。
我的最終結果必須是儘可能少地與最終用戶進行交互,從而打印出服務器端PDF。注意:這是一個WAMP環境。
任何想法?
謝謝。
更新: 試過把代碼放入批處理文件並調用它,仍然沒有工作。嘗試使用exec()
和shell_exec()
,但仍然沒有喜悅。出於某種原因,當我通過雙擊運行該批處理文件時,它可以正常工作。當我使用PHP調用它時,除了打開兩個不關閉的acrord32.exe實例外,它不會執行任何操作,因此PHP腳本似乎永遠不會完成。我洙困惑......
嘗試在AcrdoRD2的路徑逃避斜線了。 'C:\\ Program Files \\ Adobe \\ ...' – Nadh
試過但仍然沒有喜悅。此外,我試圖逃避PDF和打印機的路徑 - 仍然沒有。 :( – weedave
好吧,'echo shell_exec(''C:\\ Program Files ...「)'看看它打印什麼。可能有幫助的錯誤信息。 – Nadh