名前: 大熊一弘 日時: 2008-12-30 17:38:04 IPアドレス: 116.83.63.*
>>52491 > 右上の x をクリックして閉じることは、「?」に答えていないとは知りませんでした。 大まかな,怪しげな解説です。 コマンドプロンプトを起動した段階では cmd.exe というソフトが動いています。 次に platex foo.tex とした段階では,子プロセスとして platex.exe というソフトが動き出します。 エラーが出て ? というプロンプトは platex.exe が出力しています。 A) x(あるいは e など)キーを投入してエンターキーを押すということは platex.exe に応える動作です。 これにより,platex.exe は終了し,cmd.exe も終了します。 これは正常な終了で,ログファイルも正しく作成されます。 B) 右上の x 印をマウスの左ボタンでクリックするということは, cmd.exe に強制終了を指示することになります。 このとき,その子プロセス platex.exe が開いているファイル(ログへの出力) などをどうするか(奥村先生が言われる fflush)は,cmd.exe の処理に依存します。 今回の現象から推測すると XP では fflush が行われるが Vista では行われない ということなのかもしれません。 いずれにせよ,ユーザとしては, 下位のソフト(この場合 platex.exe)からきちんと終了処理をしていく のが望ましいということはいえるでしょう。 以下,独り言です。(一言多いのは自覚しておりますが.....) # この板への書き込みはしたくないのですが, # このスレッドの元投稿者は拙作のマクロパッケージ emath の掲示板でも # お目にかかっており,お世話になっておりますので, # 解決の一助になれば,ということで投稿しました。 # しかし,やっぱり投稿すべきではなかったな,という思いが残りました。 # お邪魔しました。<(_ _)> # 引っ込みます。
この書き込みへの返事: