当前位置: 代码迷 >> 汇编语言 >> call后面接字符串解决办法
  详细解决方案

call后面接字符串解决办法

热度:1254   发布时间:2013-02-26 00:00:00.0
call后面接字符串
Assembly code
    include    user32.inc    includelib user32.lib    include    kernel32.inc    includelib kernel32.lib        .data    szTitle        db    'title',0    szText        db    'my name is',0            .code        start:        call    loc1    db    'hey man',0    invoke    MessageBox, NULL, addr szTitle, addr szText, MB_OK  ;不会到这一句,为什么?    loc1:        pop    esi    push    esi    invoke    MessageBox, NULL, esi, esi, MB_OK    ret        end start


call完loc1就不会向下运行了,程序又如何结束? 


------解决方案--------------------------------------------------------
探讨
Assembly code
include user32.inc
includelib user32.lib
include kernel32.inc
includelib kernel32.lib
.data
szTitle db 'title',0
szText ……

------解决方案--------------------------------------------------------
探讨
引用:
Assembly code
include user32.inc
includelib user32.lib
include kernel32.inc
includelib kernel32.lib
.data
szTitle db 'title',0
szText ……

这个技巧有许多变种,举例仅供参考:

Assembly co……
  相关解决方案