2012-04-30 19 views
0

私はperlで生成されたテキストファイルを印刷する必要があります。私はxampp、Windows7 64ビットを使用しています。xampp(windows-7-x64)経由でperlでシステム()経由で印刷

$system = "print\ /d:\\\\SERVER\\PRINTER\ C:\\xampp\\cgi-bin\\textfile.txt"; 
system ($system); 

私はCMDシェルで同じ行をしようとすると、印刷が機能: 私のperlスクリプトは、印刷システムコールを含むされます。

答えは次のとおりです。

C:\xampp\cgi-bin\textfile.txt wird momentan gedruckt. 

が、他には何も起こりません。

次に、バッチファイルを作成しようとしました。バッチファイルを手動で起動すると、印刷が開始されます。 system()から呼び出すと何も起こりません。

次に、別の方法でFirefoxのファイルを最初に表示してみました。私は私のhtdocs-dirのにファイルをコピーしたとする私のバッチファイルを変更:

cd "c:\Program Files (x86)\Mozilla Firefox" 
firefox.exe -new-window http://localhost/textfile.txt 

ダブルクリックバットは私のFirefoxと私のテキストファイルを開始します。 システム() - コールistは機能していません。

すべてのアイデア?

トム

+2

最後のバックスラッシュ( 'cgi-bin \ textfile.txt'の近く)をエスケープするのを忘れましたか? – mob

+0

はい、ありがとう!しかし、私の投稿された質問でのみ:-(私の実際のコードでは、それはエスケープされています。 – millemedium

答えて

1

私の兄弟がその理由を発見しました。感謝のクリス! 権限に問題がありました。 apacheサービスは、通常のユーザー権限なしで実行されています。ユーザー権限(または、より良い:特別に定義、新しい権限)を設定するには : (申し訳ありませんが、これはドイツ語である)

タスクマネージャ "Dienste" rechts untenアウフ「[Adminzeichen]のWindows 7には64ビットのプロDienste」 アウフDienst "アパッチ" rechtsklick "Eigenschaften" ライター: "Anmelden" Auswahl: "Dieses Konto" ユーザーウントPasswort手綱 "Übernehmen" ウント "OK"

ダンnochmalアウフ "アパッチ" linksklickウント"neu starten"へのリンク

関連する問題