今、外字コピー屋さんの、Vista 対応版を作成中である。
そんな中で遭遇したエラーの話。
外字エディタで文字を保存する時に、「メモリ不足です」というエラーが出ることがある。エラーがでると、文字の保存はできない。
メモリは充分積んでいるし、それほどたくさんのプログラムを走らせているわけではないので、メモリ不足ということはないはず。
いくつかのOSで試してみたが、Vista でも Windows Xp でもWindows 2000 でも同じエラーがでる。
いずれのOSも Shift-JIS の範囲外のところに文字を保存しようとするとエラーになるようだ。すなわち、Unicode で E758 以降のことであるが、その範囲に文字の保存が出来ないのである。
さらにテストをしてみると、該当する外字ファイルが Windows 98 や NT から引き継いでいるものだと、エラーになることがわかった。
Windows 2000 で新規に作成した外字であれば、上記のエラーは出ない。Windows Xp も Windows Vista も問題ない。
Windows 98 や Windows NT で作成した外字をWindows 2000 や Xp, Vistaにインストールし、外字エディタを起動すると、なにやら変換作業が行われるが、この変換が完全ではないのだろう。
<結論>
Windows 98 や NT で作成した外字を、Windows 2000, Xp, Vista で使用する場合は、Shift-JIS で F040-F9FC の範囲でしか文字の追加や編集ができない。
それ以降の範囲に文字を追加する必要がある場合は、外字を新規に作成しなおすしかない。
2008年08月26日
この記事へのトラックバックURL
http://blog.sakura.ne.jp/tb/18398585
※ブログオーナーが承認したトラックバックのみ表示されます。
※言及リンクのないトラックバックは受信されません。
この記事へのトラックバック
http://blog.sakura.ne.jp/tb/18398585
※ブログオーナーが承認したトラックバックのみ表示されます。
※言及リンクのないトラックバックは受信されません。
この記事へのトラックバック
なるほど98から受け継いだ外字だとメモリ不足です…か
新規作成ってどうやんだ!?。(´Д⊂
文字が多いと大変ですけどねえ。
完成したらリネームして外字をインストールしなおせばいいかと。
コピーが大変なら、もしかするとシェアウェアのTTEditが使えるかもです。
1)tteを削除して、eufのみの状態にする
2)外字エディタを起動し、unicode領域に外字を作成
3)保存
これで、エラーなく保存できませんか?
十分なテスト環境がないので、よければテストしてほしいという、わがままな通りすがりです・・・。
外字がないように見えて、コードを選択したら、データが残っていたので、大丈夫なのかと思ったら、消えていました。
何が悪いんだろう・・・