Μiss^依然 发表于 2013-3-15 16:24:57

谁给我看下这个程序,说说哪里不对,为什么不对。不要给我说照书上找。。。我要知道为

我要知道为什么错。谢谢啦
.386
.model flat,stdcall
option casemap:none
include user32.inc
include kernel32.inc
include windows.inc
include gdi32.inc
includelib kernel32.lib
includelib gdi32.lib
includelib user32.lib
ICO_MAIN equ 0x1000
DLG_MAIN equ 0x100
IDC_INFO equ 0x101
.data
hInstance dd ?
hWinMain dd ?
.const
szdb '物理内存总数:%016x KB',0ah,0dh
db '空闲物理内存:%016x KB',0ah,0dh
db '虚拟内存总数:%016x KB',0ah,0dh
db '空闲虚拟内存:%016x KB',0ah,0dh
db '已用内存比列:%02d KB',0ah,0dh
db '--------------------',0ah,0dh
db '用户地址空间总数:%016x kb',0ah,0dh
db '用户可用地址空间:%016x kb',0ah,0dh,0
.code
DLG1_PROC proc
local @hmemory:MEMORYSTATUS
local @szbuffer:byte
mov @hmemory.dwLength,sizeof MEMORYSTATUS
invoke GlobalMemoryStatus,addr @hmemory
invoke wsprintf,addr @szbuffer,addr sz,addr @hmemory.dwTotalPhys,addr @hmemory.dwAvailPhys,\
addr @hmemory.dwTotalPageFile,addr @hmemory.dwAvailPageFile,addr @hmemory.dwMemoryLoad,\
addr @hmemory.dwTotalVirtual,addr @hmemory.dwAvailVirtual
invoke SetDlgItemText,hWinMain,IDC_INFO,addr @szbuffer
ret
DLG1_PROC endp
DLG_PROC proc uses esi edi ebx,hWnd,wMsg,wParam,lParam
push hWnd
pop hWinMain
mov eax,wMsg
.if eax==WM_CLOSE
invoke EndDialog,hWnd,NULL
invoke KillTimer,hWnd,1
.elseif eax==WM_INITTDIALOG
invoke LoadIcon,hInstance,ICO_MAIN
invoke SendMessage,hWnd,WM_SETICON,ICO_MAIN,eax
invoke SetTimer,hWnd,1,1000,NULL
call DLG1_PROC
ret
DLG_PROC endp
start:
invoke GetModuleHandle,NULL
mov hInstance,eax
invoke DialogBoxParam,hInstance,DLG_MAIN,NULL,DLG_PROC,NULL
invoke ExitProcess,NULL
end start

安阳王志宇 发表于 2013-3-15 16:47:26

.if eax==WM_CLOSE
invoke EndDialog,hWnd,NULL
invoke KillTimer,hWnd,1
.elseif eax==WM_INITTDIALOG
invoke LoadIcon,hInstance,ICO_MAIN
invoke SendMessage,hWnd,WM_SETICON,ICO_MAIN,eax
invoke SetTimer,hWnd,1,1000,NULL
call DLG1_PROC
.else
mov eax,false
ret
.endif
mov eax,ture
ret

安阳王志宇 发表于 2013-3-15 16:48:31

千万不要忘记了 对话框 的 书写 ,都是固定死了的

Μiss^依然 发表于 2013-3-15 17:07:37

什么意思?

安阳王志宇 发表于 2013-3-15 17:14:42

注意大小写 TRUE,,还有些 毛病,热擦
页: [1]
查看完整版本: 谁给我看下这个程序,说说哪里不对,为什么不对。不要给我说照书上找。。。我要知道为