°´¼üÅÌÉÏ·½Ïò¼ü ¡û »ò ¡ú ¿É¿ìËÙÉÏÏ·ҳ£¬°´¼üÅÌÉ쵀 Enter ¼ü¿É»Øµ½±¾ÊéĿ¼ҳ£¬°´¼üÅÌÉÏ·½Ïò¼ü ¡ü ¿É»Øµ½±¾Ò³¶¥²¿£¡
¡ª¡ª¡ª¡ªÎ´ÔĶÁÍꣿ¼ÓÈëÊéÇ©ÒѱãÏ´μÌÐøÔĶÁ£¡
£»¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·
£»¡¡¼ÆËã16½øÖƵ½10½øÖÆ
£»¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·
_HexToDec¡¡¡¡¡¡¡¡¡¡¡¡¡¡proc
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡local¡¡¡¡¡¡@szBuffer£§512£§£ºbyte
¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡invoke¡¡¡¡GetDlgItemText£»hWinMain£»IDC_HEX£»
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡addr¡¡@szBuffer£»sizeof¡¡@szBuffer
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡lea¡¡¡¡¡¡¡¡¡¡esi£»@szBuffer
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡cld
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡xor¡¡¡¡¡¡¡¡¡¡eax£»eax
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡mov¡¡¡¡¡¡¡¡¡¡ebx£»16
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£while¡¡¡¡TRUE
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡movzx¡¡¡¡¡¡ecx£»byte¡¡ptr¡¡£§esi£§
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡inc¡¡¡¡¡¡¡¡¡¡esi
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£break¡¡¡¡¡£if¡¡£¡¡¡ecx
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£if¡¡¡¡¡¡¡¡¡¡cl¡¡¡·¡¡'9'
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡sub¡¡¡¡¡¡¡¡¡¡cl£»'A'¡¡¡¡¡0ah
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£else
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡sub¡¡¡¡¡¡¡¡¡¡cl£»'0'
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£endif
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡mul¡¡¡¡¡¡¡¡¡¡ebx
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡add¡¡¡¡¡¡¡¡¡¡eax£»ecx
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£endw
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡invoke¡¡¡¡wsprintf£»addr¡¡@szBuffer£»addr¡¡szFmtHexToDec£»eax
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡invoke¡¡¡¡SetDlgItemText£»hWinMain£»IDC_DEC£»addr¡¡@szBuffer
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ret
¡¡
_HexToDec¡¡¡¡¡¡¡¡¡¡¡¡¡¡endp
£»¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·
£»¡¡¼ÆËã10½øÖƵ½16½øÖÆ
£»¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·
_DecToHex¡¡¡¡¡¡¡¡¡¡¡¡¡¡proc
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡local¡¡¡¡¡¡@szBuffer£§512£§£ºbyte
¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡invoke¡¡¡¡GetDlgItemInt£»hWinMain£»IDC_DEC£»NULL£»FALSE
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡invoke¡¡¡¡wsprintf£»addr¡¡@szBuffer£»addr¡¡szFmtDecToHex£»eax
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡invoke¡¡¡¡SetDlgItemText£»hWinMain£»IDC_HEX£»addr¡¡@szBuffer
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ret
¡¡
_DecToHex¡¡¡¡¡¡¡¡¡¡¡¡¡¡endp
£»¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·
_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
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡mov¡¡¡¡¡¡¡¡¡¡eax£»hWnd
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡mov¡¡¡¡¡¡¡¡¡¡hWinMain£»eax
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡invoke¡¡¡¡SendDlgItemMessage£»hWnd£»
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡IDC_HEX£»EM_LIMITTEXT£»8£»0
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡invoke¡¡¡¡SendDlgItemMessage£»hWnd£»
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡IDC_DEC£»EM_LIMITTEXT£»10£»0
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡invoke¡¡¡¡GetDlgItem£»hWnd£»IDC_HEX
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡invoke¡¡¡¡SetWindowLong£»eax£»GWL_WNDPROC£»addr¡¡_ProcEdit
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡mov¡¡¡¡¡¡¡¡¡¡lpOldProcEdit£»eax
£»********************************************************************
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£elseif¡¡eax¡¡¡¡¡¡WM_MAND
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡mov¡¡¡¡¡¡¡¡¡¡eax£»wParam
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£if¡¡¡¡¡¡¡¡¡¡£¡¡¡dwOption
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡mov¡¡¡¡¡¡¡¡¡¡dwOption£»TRUE
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£if¡¡¡¡¡¡¡¡¡¡ax¡¡¡¡¡¡¡¡IDC_HEX
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡invoke¡¡¡¡_HexToDec
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£elseif¡¡ax¡¡¡¡¡¡¡¡IDC_DEC
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡invoke¡¡¡¡_DecToHex
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£endif
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡mov¡¡¡¡¡¡¡¡¡¡dwOption£»FALSE
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£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
£»¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·¡·
¡¡
À´Ô´£ºµç×Ó¹¤Òµ³ö°æÉç¡¡×÷ÕߣºÂÞÔƱò¡¡ÉÏÒ»Ò³¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡»ØÊéÄ¿¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ÏÂÒ»Ò³¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
ÉÏÒ»Ò³¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡»ØÊéÄ¿¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ÏÂÒ»Ò³¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
¡¡¡¡
µÚ9Õ¡¡Í¨Óÿؼþ
9¡£5¡¡´°¿ÚµÄ×ÓÀ໯£¨3£©
¡¡¡¡¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡end¡¡¡¡¡¡¡¡¡¡start
³ÌÐòÔËÐкó½«ÏÔʾÈçͼ9¡£9ËùʾµÄ¶Ô»°¿ò£¬ÉÏÃæµÄ±à¼¿Ø¼þÊǾ¹ý×ÓÀ໯µÄ£¬Ö»ÄÜÊäÈë16½øÖÆ×Ö·û£¬µ±ÊäÈë×Öĸa¡«fµÄʱºò£¬²»¹ÜÊäÈëµÄÊÇ´óд»¹ÊÇСд×Öĸ£¬¶¼»á±»¿Ø¼þת»»³É´óд×Öĸ¡£ÏÂÃæµÄ±à¼¿òÊÇES_NUMBER·ç¸ñµÄ£¬¿ÉÒÔÊäÈëÊý×Ö¡£²»¹ÜÔÚÄĸö±à¼¿òÖÐÊäÈëÊýÖµ£¬³ÌÐò»áÂíÉϽøÐÐת»»²¢½«½á¹ûÔÚÁíÒ»¸ö±à¼¿òÖÐÏÔʾ³öÀ´¡£
ͼ9¡£9¡¡¡¡´°¿Ú×ÓÀ໯Àý×ÓµÄÔËÐнçÃæ
³ÌÐòÔÚ¶Ô»°¿òµÄ³õʼ»¯ÏûÏ¢WM_INITDIALOGÖжÔÕâÁ½¸ö±à¼¿Ø¼þ·¢ËÍEM_LIMITTEXTÏûÏ¢£¬ÒÔ´ËÏÞÖÆÄܹ»ÊäÈëµÄ×î´ó×Ö·û³¤¶È£¬½ÓÏÂÀ´³ÌÐòͨ¹ýGetDlgItem»ñÈ¡IDC_HEX±à¼¿òµÄ´°¿Ú¾ä±ú£¬²¢Ê¹ÓÃSetWindowLongº¯Êý½«±à¼¿òµÄд°¿Ú¹ý³ÌÉèÖõ½_ProcEdit×Ó³ÌÐòÖУ¬·µ»ØµÄÔ´°¿Ú¹ý³ÌµØÖ·±»±£´æµ½lpOldProcEdit±äÁ¿ÖУº
¡¡¡¡¡¡¡¡invoke¡¡¡¡GetDlgItem£»hWnd£»IDC_HEX
¡¡¡¡¡¡¡¡invoke¡¡¡¡SetWindowLong£»eax£»GWL_WNDPROC£»addr¡¡_ProcEdit
¡¡¡¡¡¡¡¡mov¡¡¡¡¡¡¡¡¡¡lpOldProcEdit£»eax
ÕâÑù£¬µ±WindowsÏòIDC_HEX±à¼¿ò·¢ËÍÏûϢʱ£¬_ProcEdit×Ó³ÌÐò¾Í»áÊÕµ½ÏûÏ¢£¬ÔÚ_ProcEditÖÐÎÒÃǽö´¦Àí¸ÐÐËȤµÄWM_CHARÏûÏ¢£¬³ÌÐòÔÚÊý¾Ý¶ÎÖж¨ÒåÁËÒ»¸öÔÊÐíÊäÈëµÄ×Ö·û±í£¬±íÖаüÀ¨0¡«9¡¢´óСдµÄA¡«FÒÔ¼°Í˸ñ¼ü£¨Èç¹û²»ÔÊÐíÊäÈëÍ˸ñ¼üµÄ»°½«ÎÞ·¨ÐÞÕýÊäÈë´íÎ󣩡£È»ºóÔÚ´¦ÀíWM_CHARÏûϢʱʹÓÃscasbÖ¸Áî½øÐвé±í£¬Èç¹û×Ö·ûÔÚ±íÖУ¬Ôò½«WM_CHARÏûϢͨ¹ýCallWindowProcº¯Êýת·¢¸øÔÀ´µÄ´°¿Ú¹ý³Ì£¬Èç¹û²»ÔÚ±íÖÐÔòÖ±½Ó·µ»Ø£¬Ï൱ÓÚ¶ªÆúÁËÕâ¸ö°´¼ü¶¯×÷¡£´úÂëÈçÏ£º
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡nst
szAllowedChar¡¡¡¡¡¡¡¡¡¡¡¡¡¡db¡¡¡¡¡¡¡¡¡¡¡¡'0123456789ABCDEFabcdef'£»08h
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡de
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£¡£¡£
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡mov¡¡¡¡¡¡¡¡¡¡eax£»wParam¡¡¡¡£»WM_CHARÏûÏ¢ÖеÄÒ»¶Î´úÂë
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡mov¡¡¡¡¡¡¡¡¡¡edi£»offset¡¡szAllowedChar
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡mov¡¡¡¡¡¡¡¡¡¡ecx£»sizeof¡¡szAllowedChar
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡repnz¡¡¡¡¡¡scasb
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£if¡¡¡¡¡¡¡¡¡¡ZERO£¿
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£if¡¡al¡¡¡·¡¡'9'
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡and¡¡¡¡¡¡¡¡¡¡al£»not¡¡20h
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£endif
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡invoke¡¡¡¡CallWindowProc£»lpOldProcEdit£»hWnd£»uMsg£»eax£»lParam
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ret
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£endif
ÔÚת·¢Ö®Ç°£¬³ÌÐò»¹¶Ô×Ö·û½øÐÐÅжϣ¬Èç¹û×Ö·ûÊÇСдµÄa¡«fµÄ»°£¨±íÖеÄ×Ö·ûÖдóÓÚ¡°9¡±µÄ¿Ï¶¨ÊÇ×Öĸ£©£¬Ôòͨ¹ýand¡¡al£»not¡¡20hÓï¾ä½«×Öĸת»»³É´óд£¬ÒòΪ´óд×ÖĸµÄASCIIÂë´Ó41h¿ªÊ¼£¬Ð¡Ð´×Öĸ´Ó61h¿ªÊ¼£¬ÕâÑùµÄ¼ÆËã·½·¨¶Ô´óд×ÖĸûÓÐÓ°Ï죬¶ÔСдµÄÔò¸ÕºÃÄܹ»×ª»»³É´óдµÄ¡£³ÌÐò½«ÆäËûËùÓеÄÏûÏ¢Ô·â²»¶¯µØת·¢¸øÔÀ´µÄ´°¿Ú¹ý³Ì£¬ÕâÑù²ÅÄÜÈñ༿ؼþµÄ´°¿Ú¹ý³ÌΪÎÒÃÇÍê³É¿Ø¼þµÄÆäËû¹¦ÄÜ¡£
ת·¢ÏûϢʹÓÃÁËCallWindowProcº¯Êý£¬Õâ¸öº¯Êý½öÆðµ½½«²ÎÊýÈëÕ»ºÍµ÷ÓÃÖ¸¶¨µØÖ·µÄ×÷Ó㬶ÔÓÚÏÂÃæµÄÓï¾äÎÒÃÇÍêÈ«¿ÉÒÔÓÃ×Ô¼ºµ÷ÓÃlpOldProcEditµÄ·½·¨À´´úÌæËü£º
¡¡¡¡¡¡¡¡invoke¡¡¡¡CallWindowProc£»lpOldProcEdit£»hWnd£»uMsg£»eax£»lParam
ÏÂÃæµÄ´úÂë¾Í¿ÉÒÔÍê³ÉͬÑùµÄ¹¦ÄÜ£º
¡¡¡¡¡¡¡¡push¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡lParam
¡¡¡¡¡¡¡¡push¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡eax
¡¡¡¡¡¡¡¡push¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡uMsg
¡¡¡¡¡¡¡¡push¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡hWnd
¡¡¡¡¡¡¡¡call¡¡¡¡¡¡¡¡lpO¡¡¡¡¡¡¡¡¡¡ldProcEdit
³ÌÐòÖеÄÆäËû´úÂëÓ¦¸ÃËãÊÇÏ൱¼òµ¥µÄ£¬_DecToHex×Ó³ÌÐòÊÇ10½øÖƵ½16½øÖƵÄת»»×Ó³ÌÐò£¬×Ó³ÌÐòÖÐÓÃGetDlgItemIntº¯Êý¶ÁÈë±à¼¿òÖеÄ10½øÖÆÊýÖµ£¬²¢ÓÃwsprintfת»»³É16½øÖÆÊýÖµµÄ×Ö·û´®²¢ÏÔʾµ½IDC_HEX±à¼¿òÖУ»_HexToDecÊÇ16½øÖƵ½10½øÖƵÄת»»×Ó³ÌÐò£¬ÓÉÓÚ²¢Ã»ÓÐÏֳɵÄת»»º¯Êý£¬ËùÒÔÔÚ×Ó³ÌÐòÖÐ˳Ðò¶ÁÈë×Ö·û²¢Ã¿´Îͨ¹ý³ËÒÔ16À´½øÐмÆËã¡£
³ÌÐòÖл¹ÓÐÒ»¸ö¼¼ÇÉ¡£ÓÉÓÚʹÓÃSetDlgItemTextÉèÖñ༿òÎı¾µÄʱºò£¬±à¼¿ò»á·¢ËÍWM_MANDÏûÏ¢£¬ÓÉÓÚÒ»ÊÕµ½Ä³¸öWM_MANDÏûÏ¢¾Í½øÐÐת»»¼ÆË㣬²¢ÔÙ´ÎʹÓÃSetDlgItemTextº¯Êý½«¼ÆËã½á¹ûÏÔʾÔÚÁíÒ»¸ö±à¼¿òÖУ¬ÕâÑù¾Í»