2012-02-09 153 views
-2

我在使用windows server 2003(32位)的ghost中遇到問題。ghost腳本不能在windows 2003上使用php腳本工作

在phpinfo頁面中顯示已安裝。 此外,我能夠使用命令行界面生成.png文件,但是當我嘗試使用PHP腳本生成.png文件時,它不起作用。

$SavedPath = "C:\\Inetpub\\vhosts\\mysite\\httpdocs\\testlib\\images\\"; 

    $pdf_file = "C:\\Inetpub\\vhosts\\mysite\\httpdocs\\testlib\\test.pdf"; 

    $cmd = "gs -sDEVICE=jpeg -dJPEGQ=100 -dGraphicsAlphaBits=4 -dTextAlphaBits=4 -dDOINTERPOLATE -sOutputFile=".$SavedPath."_%d.jpg -dSAFER -dBATCH -dNOPAUSE -r72x72 ".$pdf_file; 

    Ghostscript is installed on C:\gs\bin\gsdll32.dll. 
    And exe file is located on C:\gs\bin\gswin32c.exe. 

請告訴我,我應該改變在Windows環境變量? 我也嘗試了轉換命令,而不是gs,但沒有運氣。

回答

2

嘗試使用$output = shell_exec($cmd); echo "<pre>$output</pre>"; - 並查看是否打印出錯誤。

正如@丹所提到的,你也可以使用exec($cmd, $output);然後print_r($output);

丹的方法可能會證明,因爲如果發生錯誤了shell_exec返回null,以產生更多的信息。

更新

的問題可能是因爲@丹提到的權限。

關於權限:

上找到SO about this另一篇文章:這個帖子實際上可以參考其他網站:http://www.myfaqbase.com/q0000843.html

+0

+1。是的,試試這個。 – Dan 2012-02-09 18:44:49

+0

@knichil,我已經嘗試了shell_exec($ cmd)以及exec($ cmd,$ output)。但它仍然沒有運氣。我檢查了權限,但也沒有權限問題。 也print_r($輸出)也沒有錯誤。 – Milap 2012-02-11 03:48:15

+0

我很抱歉@Milap,但我很新鮮的想法。沒有錯誤,沒有權限問題,這是一個最有趣的問題。 – 2012-02-14 00:19:28