RichTextBoxの検索が失敗します。

解決


70Q  2005-08-31 04:37:18  No: 124637

Windows APIのSendMessage()を使用して、RichTextBox内のテキストを検索するプログラムを作成しているのですが、Windowsを起動してからプログラムを起動して検索を行うと、検索文字列が存在するにも関わらず、戻り値が-1で返ってきてしまいます。
しかし、しばらくすると何故か正常に検索されるようになります。Windowsを再起動して、また検索しても検索は上手く行きません。
原因がわからず困り果てています・・・。

以下は検索処理の抜粋です。

        lngTextFindEx = FR_DOWN Or FR_MATCHCASE
        With udtFindTextEx
            With .chrg
                .cpMin = 0   'テキストの先頭から
                .cpMax = -1  '最後尾まで検索
            End With
            '''''検索する文字列の指定
            .lpstrText = strKey(i)
        End With

        lngFindPos = SendMessage(lngHWnd, EM_FINDTEXTEX, lngTextFindEx, udtFindTextEx)

環境は以下です。
OS:Windows XP Professional SP2
   VB6


ねろ  2005-08-31 17:03:37  No: 124638

原因はわかりませんが、困り果てているなら、
InStr又はInStrRevで検索しても、それ程処理時間は
変わらないと思いますが。


70Q  2005-08-31 20:45:04  No: 124639

常駐していた不要なアプリケーションを削除したところ、Windows起動直後も検索処理は正常に動作するようになりました…。
根本的な解決ではないですが、ひとまず自己解決ということにします。

>ねろさん
検索範囲と、検索対象の量が膨大な為、少しでも早い処理で進めたいと思っています。

ありがとうございました。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加