こんにちは
Sjis.pm を使うとCGIスクリプト実行時にコマンドプロンプトが立ち
上がってしまう件、
藤岡さんwrote:
>> # perl510.bat version 1.0.5 であれば「実行しているのは
>> # C:\Perl\bin\perl.exe」
>> # と表示しない(=不親切になった)と思うので。
>
> おっしゃる意味がよくわかりませんが、コマンドプロンプトにはカーソルが点
> 滅しているだけです。コマンドプロンプトで何が実行されているか、動作してい
> るかは、Top Barに表示されているものを指しています。
画面に表示されているのかと勘違いして、見当違いなことを書いて
しまいました。すみません。
原因から perl510.bat も Esjis.pm も排除されたので、Sjis.pm
そのもの、ということですね?
だとすると Sjis.pm の440行目あたりの
exit system map {m/ $your_gap [ ] /oxms ? qq{"$_"} : $_}
$^X, "$filename.e", @ARGV;
の system がコマンドプロンプトを立ち上げているように思えます。
ここは Sjis.pm の実行の最後の部分で、エスケープ処理を施した
ファイルを Perl スクリプトとして実行する部分です。
この exit system を exec にしたいところですが、私の環境だと
テストにパスしないので exit system にしてあります。
exit system と書く必然性はあるが、コマンドプロンプトが立ち上
がる必然性はないという...何だか苦しくなってきたぞ^^;
"$filename.e" に @ARGV を渡して実行できれば他の書き方でも
よいのですが。
# 対処療法と同時に根本的にもなおせると嬉しいです。
稲葉 準
_________________________________________________________________
今年こそ節約しよう!まずはネット代から。
http://campaign.live.jp/eaccess/Top/