• ベストアンサー

エスケープ シーケンスが働かない

MS-Dos用の古いプログラムですが、Windows-XPのDOS窓(と呼ぶのかな?)で実行すると、そのままエスケープシーケンス文字列が表示されてしまい、位置決めなどをしません。何かいい方法があれば、教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • DrSumire
  • ベストアンサー率39% (264/666)
回答No.1

ANSI.SYSを読み込むようにすればOKかも WindowsXPのsystem32フォルダーの中のconfig.ntをテキストエディターで開いて最後に以下の行を追加してからDOS窓を起動してみてください。 device=%SystemRoot%\system32\ansi.sys

noname#6587
質問者

お礼

早速のご返事、ありがとうございます。 やってみます。

その他の回答 (2)

  • mi-si
  • ベストアンサー率35% (200/567)
回答No.3

%SystemRoot%\system32 の下(大体はc:\windows\system32ですが)にある、config.ntと言うファイルの最後に、 device=%SystemRoot%\ANSI.SYS dosonly を追加します。 コマンドプロンプトにはCMD.EXEでは無くCOMMAND.EXEを使います。

参考URL:
http://www.hakodate-ba.ac.jp/hp/etc_hp/mizukami/TrRoom8.htm
noname#6587
質問者

お礼

早速のご返事、ありがとうございます。 やってみます。皆様、ありがとうございました。 結果を試した後、閉めキラららさせていただきたく存じます。

回答No.2

>Windows-XPのDOS窓(と呼ぶのかな?) Windows NT/2000/XPではコマンドプロンプトと言います。 DOSとは(似ていますが)基本的に違う物です。 >そのままエスケープシーケンス文字列が表示されてしまい、 >位置決めなどをしません。 コマンドプロンプトを起動するときにANSI.SYSを読み込む 必要が有ります。 C:\Windows\system32\config.nt というファイルに、 devicehigh=%SystemRoot%\system32\ansi.sys と書き込めば良いでしょう。多分。 ただし、互換性が完全では無いらしいので、完璧に動作する かどうかは分かりません。

noname#6587
質問者

お礼

早速のご返事、ありがとうございます。 やってみます。

関連するQ&A