![]() |
#2
beadancer2012-11-22 23:00
|

.386
.model flat,stdcall
option casemap:none
include windows.inc
include user32.inc
includelib user32.lib
include kernel32.inc
includelib kernel32.lib
include shell32.inc
includelib shell32.lib
include advapi32.inc
includelib advapi32.lib
IDD_DIALOG1 equ 101
IDC_EDIT4 equ 1000
IDC_EDIT5 equ 1001
IDC_EDIT6 equ 1002
IDC_EDIT1 equ 1003
IDC_EDIT2 equ 1004
IDC_EDIT3 equ 1005
IDC_EDIT7 equ 1006
IDC_EDIT8 equ 1007
IDC_EDIT9 equ 1008
IDC_OK equ 1009
IDC_cancel equ 1010
IDC_tray equ 1011
IDC_STATIC equ -1
ICO_MAIN equ 2000
ID_TIMER1 equ 1 ;
IDI_TRAY equ 0 ;
WM_SHELLNOTIFY equ WM_USER+5;
IDM_RESTORE equ 2001;
IDM_EXIT equ 2002;以上为菜单定义的内容
.data
szError db "input invalid",0
szErrorApplication db "Error",0
MY_SE_SHUTDOWN_NAME db "SeShutdownPrivilege",0
szAppName db "Vervsion3.0 ",0
szRestoreString db "Show(&S)",0
szExitString db "Exit(&E)",0
.data?
note NOTIFYICONDATA <>
hInstance dd ?
dwLocalTime dd ?
dwShutdownTime dd ?
dwWaitTime dd ?
hPopupMenu dd ?
dwFlag dd ?
.code
_ProcDlgMain proc uses edi ebx esi,hWnd,uMsg,wParam,lParam
local @pt:POINT
mov eax,uMsg
.if eax == WM_INITDIALOG
invoke LoadIcon,hInstance,ICO_MAIN
invoke SendMessage,hWnd,WM_SETICON,ICON_BIG,eax
.elseif eax == WM_COMMAND
.endif
mov eax,TRUE
ret
_ProcDlgMain endp
start:
invoke GetModuleHandle,NULL
mov hInstance,eax
invoke DialogBoxParam,hInstance,IDD_DIALOG1,\
NULL,offset _ProcDlgMain,NULL
invoke ExitProcess,eax
end start