『プログラム実行』が特定条件で戻ってこNo.27039
はしもとASH さん 09/09/14 16:15
 
当方で遭遇した状況を報告します。

プログラム実行を、
 実行プログラム > 出力ファイル
 実行プログラム > con
等の、リダイレクトを伴う形式で行った際、
プログラム側の標準出力が 0xE0〜0xFC で終わっていると、
プログラムが終了していても、実行中のまま戻ってこないようです。
なお、最後の1バイト以外は正常にリダイレクトされています。

確認したバージョンは、7.11と8.0β13です。

[ ]
RE:27039 『プログラム実行』が特定条件でNo.27044
秀丸担当 さん 09/09/14 16:45
 

>プログラム実行を、
> 実行プログラム > 出力ファイル
> 実行プログラム > con
>等の、リダイレクトを伴う形式で行った際、
>プログラム側の標準出力が 0xE0〜0xFC で終わっていると、
>プログラムが終了していても、実行中のまま戻ってこないようです。
>なお、最後の1バイト以外は正常にリダイレクトされています。

報告ありがとうございます。
試しにそのような出力となるようにしてみたところ、確かにそうなることが確認
できました。
0x81以降の漢字1バイト目で終わるとそうなってしまうようです。
漢字1バイト目で、2バイト目を待機している状態になっているようです。
Escキーを押すなどをして中断することはできました。
プロセスは終了していても非同期で標準入出力のバッファは存在するのでいろい
ろ難しいかもしれないのですが、もし対策が可能であれば現在開発中のV8.00βの
ほうで対策を考えたいと思います。

[ ]