本帖最后由 kikiatw 于 2019-10-29 21:30 编辑
我的問題是這樣, 我剛剛把它寫成一個程式;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
;MODE define
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
.386p
.model flat,stdcall
option casemap:none
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; Include
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
include windows.inc
include user32.inc
includelib user32.lib
include kernel32.inc
includelib kernel32.lib
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; Data
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
.data
szCaption db 'title', 0
stWndClass WNDCLASS <0,1,2,3,4,5,6,7,8,9>
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; Code
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
.code
start:
mov eax,stWndClass.lpfnWndProc ;(代表把 lpfnWndProc的值給eax)
mov eax,[stWndClass.lpfnWndProc] ;??
mov esi,offset stWndClass.lpfnWndProc ;(代表把 lpfnWndProc的位址給eax)
mov eax,[esi+WNDCLASS.lpfnWndProc] ;(代表 [esi+4] 給eax
mov eax,[esi+stWndClass.lpfnWndProc] ;(代表 [esi+stWndClass.lpfnWndProc的位址] 給eax
invoke ExitProcess,NULL
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
end start
然後看看下面這張圖, 前兩行是一樣的, 為什麼加了中括號還是一樣的?
|