当前位置: 代码迷 >> 汇编语言 >> 为何执行,会退出整个程序
  详细解决方案

为何执行,会退出整个程序

热度:580   发布时间:2016-05-02 05:02:54.0
为什么执行,会退出整个程序
Readstr proc strname:DWORD
      LOCAL szLinkBuff[256]:BYTE
         invoke RtlZeroMemory,addr szLinkBuff,sizeof szLinkBuff    
              mov edi,strname             
              .while  byte ptr [edi]   
                     invoke RtlZeroMemory,addr szLinkBuff,sizeof szLinkBuff 
                     lea esi, szLinkBuff                 
                    .while byte ptr [edi] != ","
                       xor eax,eax
                       mov al,byte ptr [edi]
                       mov [esi],al
                       inc esi
                       inc edi
                   .endw               
                invoke lstrcpy,addr buffer2, addr szLinkBuff
                inc edi  
             .endw
     ret
Readstr  endp
执行完这段,为什么会退出整个程序
------解决思路----------------------
.while byte ptr [edi] != "," && byte ptr [edi] != "0"
; 上面的 !="0" 应该是 != 0 吧。字符串结束标记不是字符 '0' 而是字节 00h
  相关解决方案