天天看点

RichEdit控件在处理EM_REPLACESEL消息中有bug?附一种解决办法

RichEdit控件在处理EM_REPLACESEL消息中有bug?附一种解决办法

Purple Endurer 原创

2007-10-27 第1版

;--- Check & skip 0dh series
    ; buffer--保存命令处理结果的内存首地址
    ; bytesRead--命令处理结果长度(字节)
    lea  esi, buffer
    mov  edi, esi
    add  bytesRead, esi
    xor  eax, eax;AL--当前字符, AH--前一字符
@TranBegin:
    cmp  esi, bytesRead
    jg   @TranEnd    mov al, byte ptr [esi]
    cmp al, 0dh
    jne @TranCopy
    cmp ah, 0dh
    jne @SkipTran
@TranCopy:
    mov byte ptr [edi], al
    inc edi
@SkipTran:
    mov ah, al
    inc esi
    jmp @TranBegin
@TranEnd: