做了的两个字符串相连程序

_ProcDlgMain    proc    uses ebx edi esi,hWnd,uMsg,wParam,lParam
                ; 定义三个局部数据,类型均为字节型
                LOCAL    @szBuffer1[
256]:byte
                LOCAL    @szBuffer2[
256]:byte
                LOCAL    @szOutputBuf[
512]:byte
                

                mov    eax,uMsg
;
********************************************************************
                .
if    eax ==  WM_CLOSE
                    ; 这里处理程序退出代码
                    invoke    MessageBox, hWnd, addr szExitApp, addr szTitle, MB_ICONQUESTION or MB_YESNO
                    .
if al == IDYES
                        invoke    EndDialog, hWnd, NULL
                    .endif
;
********************************************************************
                .elseif    eax 
==    WM_INITDIALOG
                    invoke    RtlZeroMemory,addr @szBuffer1,sizeof @szBuffer1
                    invoke    RtlZeroMemory,addr @szBuffer2,sizeof @szBuffer2
                    invoke    RtlZeroMemory,addr @szOutputBuf,sizeof @szOutputBuf
;
********************************************************************
                .elseif    eax 
==    WM_COMMAND
                    mov    eax,wParam
                    .
if    ax == IDC_EDT_FIRST
                        ; 这里编写处理第一个文本框的代码
                        
                    .elseif ax 
== IDC_EDT_SECOND
                        ; 这里编写处理第二个文本框的代码
                        
                    .elseif ax 
== IDC_BTN_OUTPUT
                        ; 先获取两个文本框的文本,分别保存在@szBuffer1和@szBuffer2中
                        ; 然后通过格式化函数wsprintf将两个文本合并,最后输出到第三个文本框中。
                        invoke    GetDlgItemText, hWnd, IDC_EDT_FIRST, addr @szBuffer1, sizeof @szBuffer1
                        invoke    GetDlgItemText, hWnd, IDC_EDT_SECOND, addr @szBuffer2, sizeof @szBuffer2
                        invoke    wsprintf, addr @szOutputBuf, addr szFormat, addr @szBuffer1, addr @szBuffer2
                        invoke    SetDlgItemText, hWnd, IDC_EDT_OUTPUT, addr @szOutputBuf
                    .elseif ax 
== IDC_BTN_EXITAPP
                        invoke    SendMessage, hWnd, WM_CLOSE, 
00
                    .endif
;
********************************************************************
                .
else    
                    mov    eax,FALSE
                    ret    ;返回eax
                .endif
;
********************************************************************
                mov    eax,TRUE
                ret            ;返回0

_ProcDlgMain    endp
posted @ 2007-08-08 14:46  nuxgod  阅读(407)  评论(0编辑  收藏  举报