プロが教えるわが家の防犯対策術!

perlにてCGIを作成しています。
ブラウザでCGIにアクセスしたとき、gpgというコマンドプロンプトの
プログラムを実行したいと考えており以下のようなプログラムを作成しました。
test.batを単体で実行したときにはうまく動作するのですが、CGIを介して
実行するとうまくいきません。


CGIのプログラム (WriteCmd.cgi)
**********************************
 #!c:/Perl/bin/perl
 print "Content-type: text/html\n\n";
 print "test.batの実行\n<br>";
 system("test.bat");
 exit;
**********************************


test.bat
**********************************
 gpg --batch --gen-key sample.txt
**********************************


またtest.batの内容を
**********************************
 mkdir test
**********************************

としてみるとディレクトリがちゃんと作成できるので
WebサーバやPerlのパスの問題ではないと考えております。
よい解決方法がありましたら教えていただけると助かります。
よろしくお願いします。

A 回答 (1件)

system("test.bat"); を バッククォート(shift+ @キー)に変えて


`test.bat`;   ならどうでしょうか?

それでも駄目ならgpgをフルパスで記述するとかしたらどうでしょうか?
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
gpgをフルパスで指定しても無理だったのでcgiファイルと同じディレクトリにgpgプログラムを
設置するとうまくいきました。 ありがとうございました。

お礼日時:2006/10/13 09:26

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!