今簡単なメモ帳を作っているのですが、
Open〜For Binary〜を使ってファイルを読み込みテキストボックスに表示する際に「メモリ不足」のエラーが出てしまいファイルを最後まで読み込めません。
これをプログラムで回避する方法は無いでしょうか?
ファイルが大きかったら、ActiveXのリッチテキストで表示できます。
メニューの"コンポーネント"から、RichTextを選んで、チェックして使えるようにしてください。
(Professional版以降なら、"新規作成"から、それらの参照がすんだ状態で作りはじめることもできます)
Binaryで読んでいるのなら、VBフォルダのREDIST.txtなどでも、ずいぶん表示は遅くなるものの表示できます。
ただ、ファイルを読んでから、メモリのなかでいくつかに分割して、
数行ずつとか表示するようにしたら、普通のテキストボックスだけでも、
結構はやく表示できるかもしれませんね。
テキストボックスに表示できるテキストのサイズは最大で32Kなので、
ファイルのサイズが32Kを超える時はリッチテキストボックスを使えば
メモリ不足のエラーは出なくなると思います。
ちなみにリッチテキストボックスは2Gくらいまで表示できたと思います。
最大サイズを10Mbyte位に想定して、ファイルサイズが大きすぎるとき
は警告メッセージを出して読み込みを中断するのも手ですね。
たかみちえさん、TEAさんアドバイスありがとうございました。
おかげで無事にファイルを最後まで読み込めました。
これからはリッチテキストの使い方を覚えますw
ツイート | ![]() |