2013-07-06 31 views
0

嗨,大家好,我這裏的代碼彙編它應該創建一個消息框,但是當我嘗試與MASMprobleme錯誤A2206:表達式中缺少運算

編譯它

我得到這個錯誤:C:.. \ TEST.ASM(26):錯誤A2206:表達式中缺少運算

.386 .model flat, stdcall 

option casemap:none 

includelib C:\masm32\lib\kernel32.lib  
includelib C:\masm32\lib\user32.lib  
include C:\masm32\include\kernel32.inc  
include C:\masm32\include\user32.inc  
include C:\masm32\include\windows.inc 

.data MsgText db "Hello World!",0 

MsgTitle db "My First MessageBox",0 

.code 

Main: 

xor ebx,ebx  
xor ecx,ecx  
push offset MsgTitle ;title  
mov ebx,esp  
push offset MsgText ;text  
mov ecx,esp  
xor eax,eax  
push eax  
push ebx  
push ecx 
push eax  
xor esi,esi 

**mov esi, 0x7655ea71 (absolute addresses of windows function MessageBoxA within USER32.DLL)** 

jmp esi 

end Main 

回答

3

應該是

mov esi, 7655ea71h 

注意的h代替0x

+0

仍然沒有工作人員 – caesar

+0

您也可以刪除'DWORD PTR'位,只是正確的十六進制表示法。我在masm32上測試過它,它在這裏工作。 – Devolus

+0

它的工作感謝球員 – caesar

相關問題