VB6.0用掲示板の過去のログ(No.2)−VBレスキュー(花ちゃん)
[記事リスト] [新規投稿] [新着記事] [ワード検索] [管理用]

投稿日: 2005/03/25(Fri) 17:03
投稿者kuro3
Eメール
URL
タイトルRe: 現在の条件では最速かも?

アドバイスいただきましたとおり、まず試してみました。
結果、びっくりするくらい早くなりました。
ただ、一行づつでの削除では、まだ少々もたついておりましので、
500行を超えた分はまとめて、削除を行おうと思いまして、
下記部分を、
> N1 = SendMessage(.hwnd, EM_LINEINDEX, CLng(1), 0)
 N1 = SendMessage(.hwnd, EM_LINEINDEX, CLng(現在の表示行数 - 500), 0) 'まずは500行
のように書き換えて試してみたのですが、このような変更の仕方でよいのでしょうか?
一応、結果を見てみると想定どうりに動いている感じなのですが・・・。
上記、変更の仕方が問題ないとすると、1万行程度では問題なくログがとれるようになりました。

また、APIの仕様をうまく調べることができなかったのですが、
提案していただいたコードの動きは、
@.行指定
A.指定行の最後までの文字数を選択
B.選択文字を、””と置き換え
と、いうステップで動いているという理解でよいのでしょうか?


> (1行の文字数が無制限のような行が受信されるなら否応無しに文字数で管理を
> せざるを得ないと思うのですが)
ご指摘を受けるまで、失念しておりました・・・。
確かに一行にメガオーダでデータ受信が発生すると洒落にならないコードにしてました。
行単位とは別に、文字数の管理も入れておこうとおこうと思います。


- 関連一覧ツリー (★ をクリックするとツリー全体を一括表示します)

- 返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)

- VBレスキュー(花ちゃん) - - Web Forum -