ÓÑÇéÌáʾ£ºÈç¹û±¾ÍøÒ³´ò¿ªÌ«Âý»òÏÔʾ²»ÍêÕû£¬Çë³¢ÊÔÊó±êÓÒ¼ü¡°Ë¢Ð¡±±¾ÍøÒ³£¡ÔĶÁ¹ý³Ì·¢ÏÖÈκδíÎóÇë¸æËßÎÒÃÇ£¬Ð»Ð»£¡£¡ ±¨¸æ´íÎó
ÒÀÒÀС˵ ·µ»Ø±¾ÊéĿ¼ ÎÒµÄÊé¼Ü ÎÒµÄÊéÇ© TXTÈ«±¾ÏÂÔØ ½øÈëÊé°É ¼ÓÈëÊéÇ©

windows»·¾³ÏÂ32λ»ã±àÓïÑÔ³ÌÐòÉè¼Æ-µÚ25²¿·Ö

°´¼üÅÌÉÏ·½Ïò¼ü ¡û »ò ¡ú ¿É¿ìËÙÉÏÏ·­Ò³£¬°´¼üÅÌÉ쵀 Enter ¼ü¿É»Øµ½±¾ÊéĿ¼ҳ£¬°´¼üÅÌÉÏ·½Ïò¼ü ¡ü ¿É»Øµ½±¾Ò³¶¥²¿£¡
¡ª¡ª¡ª¡ªÎ´ÔĶÁÍꣿ¼ÓÈëÊéÇ©ÒѱãÏ´μÌÐøÔĶÁ£¡




£»¡¡Include¡¡Îļþ¶¨Òå

£»¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·

include¡¡¡¡¡¡¡¡¡¡¡¡¡¡windows¡£inc

include¡¡¡¡¡¡¡¡¡¡¡¡¡¡user32¡£inc

includelib¡¡¡¡¡¡¡¡user32¡£lib

include¡¡¡¡¡¡¡¡¡¡¡¡¡¡kernel32¡£inc

includelib¡¡¡¡¡¡¡¡kernel32¡£lib

£»¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·

£»¡¡Equ¡¡µÈÖµ¶¨Òå

£»¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·

ICO_MAIN¡¡¡¡¡¡¡¡¡¡¡¡equ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡1000h¡¡¡¡¡¡¡¡£»Í¼±ê

DLG_MAIN¡¡¡¡¡¡¡¡¡¡¡¡equ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡1

£»¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·

£»¡¡Êý¾Ý¶Î

£»¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£data£¿

hInstance¡¡¡¡¡¡¡¡¡¡dd¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£¿

£»¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·

£»¡¡´úÂë¶Î

£»¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡de

_ProcDlgMain¡¡¡¡proc¡¡¡¡¡¡¡¡¡¡¡¡¡¡uses¡¡ebx¡¡edi¡¡esi¡¡hWnd£»wMsg£»wParam£»lParam

¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡mov¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡eax£»wMsg

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£if¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡eax¡¡¡¡WM_CLOSE

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡invoke¡¡¡¡¡¡EndDialog£»hWnd£»NULL

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£elseif¡¡¡¡¡¡¡¡eax¡¡¡¡WM_INITDIALOG

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡invoke¡¡¡¡¡¡LoadIcon£»hInstance£»ICO_MAIN

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡invoke¡¡¡¡¡¡SendMessage£»hWnd£»WM_SETICON£»ICON_BIG£»eax

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£elseif¡¡¡¡¡¡¡¡eax¡¡¡¡WM_MAND

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡mov¡¡¡¡¡¡¡¡¡¡¡¡eax£»wParam

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£if¡¡¡¡¡¡¡¡¡¡¡¡ax¡¡¡¡IDOK

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡invoke¡¡EndDialog£»hWnd£»NULL

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£endif

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£else

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡mov¡¡¡¡¡¡¡¡¡¡¡¡eax£»FALSE

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ret

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£endif¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡mov¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡eax£»TRUE

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ret

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡

_ProcDlgMain¡¡¡¡endp

£»¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·

start£º

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡invoke¡¡¡¡¡¡¡¡¡¡GetModuleHandle£»NULL

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡mov¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡hInstance£»eax

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡invoke¡¡¡¡¡¡¡¡¡¡DialogBoxParam£»hInstance£»DLG_MAIN£»

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡NULL£»offset¡¡_ProcDlgMain£»NULL

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡invoke¡¡¡¡¡¡¡¡¡¡ExitProcess£»NULL

£»¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡end¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡start

¶ÁÕß¿ÉÒÔ·¢ÏÖ£¬Ïà¶ÔÓÚÆÕͨ´°¿ÚµÄʹÓ㬶Ի°¿òµÄʹÓÃÏÔµÃÌرð¼òµ¥£¬×îÃ÷ÏÔµÄÇø±ðÔÚÓÚÖ÷³ÌÐòÖеÄÒ»´ó¶Ñ´úÂë²»¼ûÁË£¬»»³ÉÁËÒ»¸öDialogBoxParamÓï¾ä¡£

1¡£¡¡´´½¨Ä£Ì¬¶Ô»°¿ò

´´½¨Ä£Ì¬¶Ô»°¿òµÄº¯ÊýÊÇDialogBoxParam£¬ËüµÄʹÓ÷½·¨ÊÇ£º

invoke¡¡¡¡DialogBoxParam£»hInstance£»lpTemplateName£»hWndParent£»

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡lpDialogFunc£»dwInitParam



¡¡
À´Ô´£ºµç×Ó¹¤Òµ³ö°æÉç¡¡×÷ÕߣºÂÞÔƱò¡¡ÉÏÒ»Ò³¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡»ØÊéÄ¿¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ÏÂÒ»Ò³¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
ÉÏÒ»Ò³¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡»ØÊéÄ¿¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ÏÂÒ»Ò³¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
¡¡¡¡


µÚ5Õ¡¡Ê¹ÓÃ×ÊÔ´


5¡£4¡¡¶Ô¡¡»°¡¡¿ò£¨3£©

¡¡¡¡¡¡¡¡
º¯ÊýµÄ¸÷²ÎÊý˵Ã÷ÈçÏ£º

¡ñ¡¡¡¡¡¡hInstanceºÍlpTemplateName¡ªº¯Êý´ÓhInstance²ÎÊýÖ¸¶¨µÄÄ£¿éÖÐ×°ÈëlpTemplateName²ÎÊýÖ¸¶¨µÄ¶Ô»°¿ò×ÊÔ´£¬È»ºóÏÔʾ¶Ô»°¿ò´°¿Ú¡£Àý×Ó³ÌÐòÖеÄlpTemplateName²ÎÊýÓõľÍÊÇÎÒÃǶ¨ÒåµÄDLG_MAIN¡£

¡ñ¡¡¡¡¡¡hWndParent¡ª¡ª¶Ô»°¿òµÄ¸¸´°¿Ú£¬¶Ô»°¿ò¹Ø±Õ֮ǰ½«ÎÞ·¨Çл»µ½¸¸´°¿ÚËùÊôµÄÆäËû´°¿ÚÖУ¬Àý×ÓÖÐÓöԻ°¿ò×öÖ÷´°¿Ú£¬ËùÒÔ¸¸´°¿Ú¾ä±úÊÇNULL£¬ÔÚÆäËû³ÌÐòÖÐʹÓÃʱ£¬Õâ¸ö²ÎÊýÉèÖÃΪÖ÷´°¿ÚµÄ¾ä±ú¡£

¡ñ¡¡¡¡¡¡lpDialogFunc¡ª¡ªÖ¸¶¨Á˶Ի°¿ò¹ý³ÌµÄµØÖ·£¬Àý×Ó³ÌÐòÖÐÊÇ_ProcDlgMain¡£

¡ñ¡¡¡¡¡¡dwInitParam¡ª¡ªµ±×öWM_INITDIALOGÏûÏ¢µÄlParam´«¸ø¶Ô»°¿ò¹ý³Ì£¬¶ÁÕß¿ÉÒÔÓÃËüÀ´×ö×Ô¶¨ÒåµÄÓÃ;¡£

Òª½áÊøģ̬¶Ô»°¿ò£¬±ØÐëÔÚ¶Ô»°¿ò¹ý³ÌµÄWM_CLOSEÏûÏ¢ÖÐʹÓÃEndDialogº¯Êý£º

invoke¡¡¡¡EndDialog£»hDlg£»dwResult

²»ÄÜʹÓÃͨ³£µÄDestroyWindowº¯Êý£¬²ÎÊýÖеÄhDlg¾ÍÊǶԻ°¿ò´°¿ÚµÄ¾ä±ú£¬dwResult²ÎÊýÊÇÍ˳öʱµÄ·µ»ØÖµ£¬Õâ¸öÖµ×îºóÓÉDialogBoxParamº¯Êý·µ»Øµ½Ö÷³ÌÐòÖС£

2¡£¡¡´´½¨·Çģ̬¶Ô»°¿ò

´´½¨·Çģ̬¶Ô»°¿òµÄº¯ÊýÊÇCreateDialogParam£¬ËüµÄ²ÎÊý¶¨ÒåºÍDialogBoxParamһģһÑù£º

invoke¡¡¡¡CreateDialogParam£»hInstance£»lpTemplateName£»hWndParent£»

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡lpDialogFunc£»dwInitParam

mov¡¡hDlg£»eax

CreateDialogParamºÍDialogBoxParamÔÚʹÓÃÖÐÓм¸¸ö²»Í¬µã£º

¡ñ¡¡¡¡¡¡CreateDialogParamÔÚ´´½¨¶Ô»°¿òºó£¬»á¸ù¾Ý¶Ô»°¿òÄ£°åµÄ·ç¸ñÊÇ·ñ¶¨ÒåÁËWS_VISIBLEÀ´¾ö¶¨ÊÇ·ñÏÔʾ¶Ô»°¿ò´°¿Ú¡£Èç¹û¶¨ÒåÁËÔòÏÔʾ£¬Ã»ÓеĻ°£¬Ôò³ÌÐòÐèÒªÔÚÒÔºó×ÔÐе÷ÓÃShowWindowÀ´ÏÔʾËü£»¶øDialogBoxParamº¯Êý²»¹ÜÊÇ·ñ¶¨ÒåÁËWS_VISIBLE·ç¸ñ¶¼»áÏÔʾ¶Ô»°¿ò¡£

¡ñ¡¡¡¡¡¡CreateDialogParamÔÚ½¨Á¢¶Ô»°¿ò´°¿ÚºóÖ±½Ó·µ»Ø£¬·µ»ØÖµÊǶԻ°¿ò´°¿ÚµÄ¾ä±ú£»¶øDialogBoxParamÒªÔÚ¶Ô»°¿ò¹Ø±Õºó²Å·µ»Ø£¬·µ»ØÖµÊÇEndDialogÖеÄdwResult²ÎÊý¡£

¡ñ¡¡¡¡¡¡ÔÚCreateDialogParam·µ»Øºó£¬Ó¦ÓóÌÐòÔÚ×Ô¼ºµÄÏûϢѭ»·ÖлñÈ¡¶Ô»°¿òÏûÏ¢£¬ËùÒÔÈç¹ûÒªÓ÷Çģ̬¶Ô»°¿ò×ö³ÌÐòµÄÖ÷´°¿Ú£¬ÏûϢѭ»·µÄ´úÂ뻹ÊÇҪдµÄ£»¶øDialogBoxParamÊÇʹÓÃWindowsΪËüÄÚ½¨µÄÏûϢѭ»·¡£

¡ñ¡¡¡¡¡¡¹Ø±Õ·Çģ̬¶Ô»°¿òʹÓÃDestroyWindowº¯Êý£¬×¢ÒâÔÚÕâÀï²»ÒªÓÃEndDialogº¯Êý¡£

3¡£¡¡¶Ô»°¿ò¹ý³Ì

WindowsÔÚ¡°¶Ô»°¿ò¹ÜÀíÆ÷¡±¡ª¡ªÒ²¾ÍÊÇΪ¶Ô»°¿òÄÚ½¨µÄ´°¿Ú¹ý³ÌÖд¦Àí¶Ô»°¿òÏûÏ¢£¬ÔÚ´¦ÀíÇ°»áÊ×Ïȵ÷ÓÃÓû§¶¨ÒåµÄ¶Ô»°¿ò¹ý³Ì£¬³ÌÐò¿ÉÒÔÔÚÕâÀïÑ¡ÔñÊÇ·ñ×ÔÐд¦ÀíijЩÏûÏ¢¡£¶ÁÕßÔÚÀí½âʱ¿ÉÒÔ°Ñ¡°¶Ô»°¿ò¹ÜÀíÆ÷¡±¿´³ÉÊǶԻ°¿òµÄDefWindowsProc£¬·²ÊÇ×Ô¼º²»Ïë´¦ÀíµÄÏûÏ¢¶¼ÓÉËüÀ´´¦Àí¡£

ºÍ´°¿Ú¹ý³ÌÒ»Ñù£¬¶Ô»°¿ò¹ý³ÌÊÇÒ»¸ö¡°»Øµ÷¡±×Ó³ÌÐò£¬ËüÓɳÌÐò¶¨Ò壬WindowsÀ´µ÷Óã¬Ä£Ì¬¶Ô»°¿òºÍ·Çģ̬¶Ô»°¿òµÄ¶Ô»°¿ò¹ý³ÌÊÇÒ»ÑùµÄ¡£

¶Ô»°¿ò¹ý³ÌºÍ´°¿Ú¹ý³ÌµÄÊäÈë²ÎÊýÊÇÒ»ÑùµÄ£¬Ò²ÊÇ£º

DialogProc¡¡¡¡proc¡¡¡¡¡¡¡¡hwndDlg£»uMsg£»wParam£»lParam

ÔÚ³ÌÐòÀïÃæÒ»°ã±àд¶Ô»°¿ò¹ý³ÌµÄ·ÖÖ§½á¹¹ÈçÏ£º

_ProcDlgMain¡¡¡¡¡¡¡¡proc¡¡¡¡¡¡¡¡¡¡uses¡¡ebx¡¡edi¡¡esi¡¡hWnd£»wMsg£»wParam£»lParam

¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡mov¡¡¡¡¡¡¡¡¡¡¡¡eax£»wMsg

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£if¡¡¡¡¡¡¡¡¡¡¡¡eax¡¡¡¡WM_CLOSE

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£»Ä£Ì¬¶Ô»°¿òÓÃEndDialog¹Ø±Õ

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£»·Çģ̬¶Ô»°¿òÓÃDestroyWindow¹Ø±Õ

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£elseif¡¡¡¡eax¡¡¡¡WM_INITDIALOG

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£»³õʼ»¯´úÂë

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£elseif¡¡¡¡eax¡¡¡¡WM_MAND

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£»×Ó´°¿Ú¿Ø¼þ·¢Ë͵ÄÏûÏ¢

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£»wParamµÄµÍ16λΪ×Ó´°¿Ú¿Ø¼þID

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£elseif¡¡¡¡eax¡¡¡¡WM_XXXX

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£»´¦ÀíÆäËûÐèÒª´¦ÀíµÄÏûÏ¢

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£else

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡mov¡¡¡¡¡¡¡¡¡¡¡¡eax£»FALSE

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ret

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£endif¡¡¡¡¡¡¡¡¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡mov¡¡¡¡¡¡¡¡¡¡¡¡eax£»TRUE

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ret

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡

_ProcDlgMain¡¡¡¡¡¡¡¡endp

×¢Òâ¶Ô»°¿ò¹ý³ÌºÍÆÕͨµÄ´°¿Ú¹ý³ÌÔÚʹÓÃÉÏÓÐÒÔÏÂÇø±ð£º

¡ñ¡¡¡¡¡¡´°¿Ú¹ý³Ì¶ÔÓ¦ÓÚ²»Í¬µÄÏûÏ¢Óи÷ÖÖ²»Í¬º¬ÒåµÄ·µ»ØÖµ£¬¶ø¶Ô»°¿ò¹ý³Ì·µ»ØBOOLÀàÐ͵ÄÖµ£¬·µ»ØTRUE±íʾÒѾ­´¦ÀíÁËijÌõÏûÏ¢£¬·µ»ØFALSE±íʾûÓд¦Àí¡£¡°¶Ô»°¿ò¹ÜÀíÆ÷¡±´úÂë»á¸ù¾Ý·µ»ØÖµ¾ö¶¨ÊÇ·ñ¼ÌÐø´¦ÀíijһÌõÏûÏ¢£¨Î©Ò»µÄÀýÍâÊÇWM_INITDIALOGÏûÏ¢£©¡£

¡ñ¡¡¡¡¡¡¶ÔÓÚ²»´¦ÀíµÄÏûÏ¢£¬²»ÐèÒªµ÷ÓÃDefWindowProcÀ´´¦Àí£¬ÕâÊÂÇéÓÉ¡°¶Ô»°¿ò¹ÜÀíÆ÷¡±À´×ö¡£

¡°¶Ô»°¿ò¹ÜÀíÆ÷¡±²»»á°ÑWM_CREATEÏûϢת·¢¸ø¶Ô»°¿ò¹ý³Ì£¬È¡¶ø´úÖ®£¬Ëü»áÒÔWM_INITDIALOGÏûÏ¢À´µ÷ÓöԻ°¿ò¹ý³Ì£¬³ÌÐò¿ÉÒÔÔÚÕâÀï½øÐÐһЩ³õʼ»¯µÄ²Ù×÷£¬WM_INITDIALOGÏûÏ¢µÄ·µ»ØÖµÓеãÌØÊ⣬Èç¹û³ÌÐòÏë×ÔÐÐÉèÖÃÊäÈë½¹µã£¬ÄÇô¿ÉÒÔÓÃSetFocusº¯Êý°ÑÊäÈë½¹µãÉèÖõ½ÐèÒªµÄ×Ó´°¿Ú¿Ø¼þÉÏ£¬È»ºó·µ»ØFALSE£»Èç¹û·µ»ØTRUEµÄ»°£¬ÄÇôWindows»á×Ô¶¯½«ÊäÈë½¹µãÉèÖõ½µÚÒ»¸öÓÐWS_TABSTOPµÄ×Ó´°¿Ú¿Ø¼þÉÏ¡£

¶Ô»°¿ò¹ý³ÌÔÚWM_MANDÏûÏ¢Öд¦Àí×Ó´°¿Ú¿Ø¼þ·¢Ë͵ÄÃüÁµ±Óû§ÔÚ¶Ô»°¿òÖа´ÏÂÁË°´Å¥£¬ÊäÈëÎÄ×Ö»òÑ¡Ôñ¸´Ñ¡¿òµÈ²Ù×÷ʱ£¬×Ó´°¿Ú¿Ø¼þ»áÏò¶Ô»°¿ò¹ý³Ì·¢ËÍWM_MANDÏûÏ¢£¬wParamÊÇ×Ó´°¿Ú¿Ø¼þµÄID£¬ÈçÀý×Ó³ÌÐòÖд¦Àí¡°Í˳ö¡±°´Å¥µÄÏûÏ¢£¬ÔÚÀïÃæÓÃEndDialogº¯Êý¹Ø±Õ¶Ô»°¿ò¡£

¶Ô»°¿ò´°¿ÚµÄ±êÌâÀ¸ÉÏĬÈÏûÓж¨Òåͼ±ê£¬Èç¹ûÒªÏñÆÕͨ´°¿ÚÒ»ÑùÏÔʾһ¸öͼ±ê£¬ÄÇô¿ÉÒÔÏñÀý×Ó³ÌÐòÖÐÄÇÑù£¬ÔÚWM_INITDIALOGÖÐÓÃWM_SETICONÏûÏ¢À´ÉèÖá£

5¡£4¡£4¡¡¡¡ÔÚ¶Ô»°¿òÖÐʹÓÃ×Ó´°¿Ú¿Ø¼þ

×Ó´°¿Ú¿Ø¼þÊÇһЩWindowsÔ¤¶¨ÒåÀ࣬ËüÃÇʵ¼ÊÉϾÍÊÇÒ»¸ö¸öÒÔ¶Ô»°¿òΪ¸¸´°¿ÚµÄ×Ó´°¿Ú¡£¶ÔÓÚ³ÌÐòÔ±À´Ëµ£¬ÔÚ¶Ô»°¿òÖÐʹÓÃËüÃǵÄʱºò²¢²»ÐèÒªÊÖ¹¤È¥ÖðÒ»´´½¨£¬Ö»ÐèÒªÔÚ¶Ô»°¿òÖж¨Òå¾Í¿ÉÒÔÁË£¬¡°¶Ô»°¿ò¹ÜÀíÆ÷¡±»áÔÚ³õʼ»¯¶Ô»°¿òµÄʱºò£¬¸ù¾Ý¶¨ÒåÓï¾ä×Ô¶¯½¨Á¢ËùÓеÄ×Ó´°¿Ú¡£

1¡£¡¡×Ó´°¿Ú¿Ø¼þµÄ¶¨Òå

×Ó´°¿Ú¿Ø¼þ¶¨ÒåµÄÒ»°ãÓï·¨ÊÇ£º

CONTROL¡¡Îı¾£»ID£»Àࣻ·ç¸ñ£»¡¡x£»¡¡y£»¿í¶È£»¸ß¶È£§£»À©Õ¹·ç¸ñ£§

¡°Îı¾¡±Ö¸¿Ø¼þµÄ³õʼ»¯Öµ£¬¡°ID¡±ÊÇ×Ó´°¿ÚÏò¶Ô»°¿ò¹ý³Ì·¢ËÍWM_MANDÖÐÓõÄIDÖµ£¬¡°Àࡱ¿ÉÒÔÊÇ°´Å¥£¨Button£©¡¢¾²Ì¬£¨Static£©¡¢±à¼­£¨Edit£©¡¢¹ö¶¯Ìõ£¨ScrollBar£©¡¢Áбí¿ò£¨ListBox£©ºÍ×éºÏ¿ò£¨boBox£©£¬ÕâЩÀ඼ÊÇWindowsϵͳÖÐÒѾ­Ô¤¶¨ÒåµÄ£¬¡°¶Ô»°¿ò¹ÜÀíÆ÷¡±ÔÚ³õʼ»¯µÄʱºò°ÑÿһÌõ¿Ø¼þ¶¨ÒåÓï¾äת»»³ÉÏÂÃæµÄCreateWindowÃüÁ

invoke¡¡CreateWindow£¬ÀàÃû£¬Îı¾£¬·ç¸ñ£»

¡¡¡¡¡¡¡¡¡¡x£¬y£¬¿í¶È£¬¸ß¶È£¬

¡¡¡¡¡¡¡¡¡¡¶Ô»°¿ò´°¿Ú¾ä±ú£¬ID£¬hInstance£¬NULL

ÕýÒòΪÈç´Ë£¬ËùÓпÉÒÔÓÃCreateWindow½¨Á¢µÄ×Ó´°¿Ú¶¼¿ÉÒÔÔÚ×ÊÔ´Öж¨Ò壬ֻҪ֪µÀҪʹÓõÄÀàºÍ·ç¸ñ¾Í¿ÉÒÔÁË¡£ËùÒÔ³ýÁËÉÏÃæÕâЩ»ù±¾µÄÀàÖ®Í⣬¶Ô»°¿òÖл¹¿ÉÒÔʹÓÃһЩͨÓÿؼþ£¬Èç¡°ÈÕÆÚ¡±£¨SysDateTimePick32£©¡¢¡°ÔÂÀú¡±£¨SysMonthCal32£©¡¢¡°Èȼü¡±£¨msctls_hotkey32£©ºÍ¡°ÁÐ±í¡±£¨SysListView32£©µÈ£¬À¨ºÅÄÚÊÇËüÃǵÄÀàÃû£¬Ö»Òª°Ñ¶¨ÒåÓï¾äµÄ¡°Àࡱд³É¶ÔÓ¦µÄÃû³Æ¾Í¿ÉÒÔÁË¡£

»ùÓÚͬһ¸öÔ¤¶¨ÒåÀàµÄ¿Ø¼þ¸ù¾Ý·ç¸ñÊôÐԵIJ»Í¬£¬Íâ±í¿ÉÄÜÍêÈ«²»Í¬£¬È絥ѡť¡¢¸´Ñ¡¿òºÍ·Ö×é¿òʹÓõÄÀ඼ÊÇButtonÀ࣬Îı¾¡¢Í¼±ê¿ò¡¢Î»Í¼¿òºÍÏßÌõµÈ¶¼ÊÇStaticÀࡣʹÓÃCONTROLÓï¾ä¶¨ÒåµÄʱºò¿ÉÄܲ»ÊǺÜÖ±¹Û£¬ËùÒÔRc¡£exe×ÊÔ´±àÒëÆ÷ÔÊÐíʹÓÃÁíÒ»ÖÖÓï·¨À´Êéд¿Ø¼þ¶¨Ò壺

¿Ø¼þÃû³Æ¡¡£§Îı¾£»£§¡¡ID£»x£»y£»¿í¶È£»¸ß¶È£§£»·ç¸ñ£§£§£»À©Õ¹·ç¸ñ£§

ÕâÀïʹÓ᰿ؼþÃû³Æ¡±¶ø²»ÊÇ¡°ÀࡱÊÇÒòΪÕâ¸öÃû³ÆÖ»ÊÇRc¡£exeʹÓõÄËõд£¬²¢²»ÊÇÕæÕýµÄWindowsÀàµÄÃû³Æ£¬¡°¿Ø¼þÃû³Æ¡±ÓÉRc¡£exe½âÊͳɡ°ÀࡱÃû£¬Í¬Ê±ÎªËüʹÓÃÁ˼¸ÖÖĬÈϵķç¸ñ£¬¶¨ÒåÓï¾äÖзç¸ñÊôÐÔʵ¼ÊÉÏÊǸ½¼ÓÔÚĬÈÏ·ç¸ñÉϵģ¬±í5¡£4ÁгöÁËÿÖֿؼþʹÓõÄÀàºÍĬÈÏÊôÐÔ£¬³ýÁ˱íÖÐÁгöµÄĬÈÏÊôÐÔÍ⣬ÿÖֿؼþ»¹±»Ä¬È϶¨ÒåÁËWS_CHILDºÍWS_VISIBLEÊôÐÔ¡£

±í5¡£4¡¡¡¡×ÊÔ´½Å±¾ÖÐʹÓõĿؼþÃû³Æ

¿Ø¡¡¼þ¡¡Ãû¡¡³Æ
¡¡Ëµ¡¡¡¡¡¡¡¡Ã÷
¡¡»ù¡¡ÓÚ¡¡µÄ¡¡Àà
¡¡Ä¬ÈÏ´°¿Ú·ç¸ñ
¡¡
PUSHBUTTON
¡¡°´Å¥
¡¡Button
¡¡BS_PUSHBUTTON£¬WS_TABSTOP
¡¡
DEFPUSHBUTTON
¡¡Ä¬ÈÏ°´Å¥
¡¡Button
¡¡BS_DEFPUSHBUTTON£¬WS_TABSTOP
¡¡
CHECKBOX
¡¡¸´Ñ¡¿ò
¡¡Button
¡¡BS_CHECKBOX£¬WS_TABSTOP
¡¡
AUTOCHECKBOX
¡¡×Ô¶¯¸´Ñ¡¿ò
¡¡Button
¡¡BS_AUTOCHECKBOX£¬WS_TABSTOP
¡¡
STATE3
¡¡3̬¸´Ñ¡¿ò
¡¡Button
¡¡BS_3STATE£¬WS_TABSTOP
¡¡
AUTO3STATE
¡¡×Ô¶¯3̬¸´Ñ¡¿ò
¡¡Button
¡¡BS_AUTO3STATE£¬WS_TABSTOP
¡¡
RADIOBUTTON
¡¡µ¥Ñ¡Å¥
¡¡Button
¡¡BS_RADIOBUTTON£¬WS_TABSTOP
¡¡
AUTORADIOBUTTON
¡¡×Ô¶¯µ¥Ñ¡Å
·µ»ØĿ¼ ÉÏÒ»Ò³ ÏÂÒ»Ò³ »Øµ½¶¥²¿ ÔÞ£¨0£© ²È£¨0£©
δÔĶÁÍꣿ¼ÓÈëÊéÇ©ÒѱãÏ´μÌÐøÔĶÁ£¡
ÎÂÜ°Ìáʾ£º ο´Ð¡ËµµÄͬʱ·¢±íÆÀÂÛ£¬Ëµ³ö×Ô¼ºµÄ¿´·¨ºÍÆäËüС»ï°éÃÇ·ÖÏíÒ²²»´íŶ£¡·¢±íÊéÆÀ»¹¿ÉÒÔ»ñµÃ»ý·ÖºÍ¾­Ñé½±Àø£¬ÈÏÕæдԭ´´ÊéÆÀ ±»²ÉÄÉΪ¾«ÆÀ¿ÉÒÔ»ñµÃ´óÁ¿½ð±Ò¡¢»ý·ÖºÍ¾­Ñé½±ÀøŶ£¡