IczEdit падает в штопор при замене текста В окно Replace вводим Find What: aaa Replace with: aaa Естественно, если в ричэдите есть этот текст Где Айзелон ошибся? Тутор №35.
Код (Text): .while TRUE invoke SendMessage,hwndRichEdit,EM_FINDTEXTEX,FR_DOWN,addr findtext .if eax==-1 .break .else invoke SendMessage,hwndRichEdit,EM_EXSETSEL,0,addr findtext.chrgText invoke SendMessage,hwndRichEdit,EM_SETTEXTEX,addr settext,addr ReplaceBuffer .endif .endw Этот код ищет текст до полного исчезновения искомой строки. Следует как-то проверять, какой раз проходит цикл по тексту.
Проще, наверное, исключить такой вариант в самом начале поиска. Off topic: Я помню как в одной из первых версий Турбо С падал компилятор при встрече такого кода: Код (Text): #define A A
Ага... Только лучше не исключать подобный вариант, а модифицировать findtext.chrg в процессе поиска. Ибо все варианты не исключить: Find what: aaa Replace with: aaaaaaaa
Такое падать не должно вообще-то... Код (Text): Before replacement: ABCDAAAMORE After replacement: ABCDAAAAAAMORE | +-- Begin next search from here