ÓÑÇéÌáʾ£ºÈç¹û±¾ÍøÒ³´ò¿ªÌ«Âý»òÏÔʾ²»ÍêÕû£¬Çë³¢ÊÔÊó±êÓÒ¼ü¡°Ë¢Ð¡±±¾ÍøÒ³£¡
ºÏ×âС˵Íø ·µ»Ø±¾ÊéĿ¼ ¼ÓÈëÊéÇ© ÎÒµÄÊé¼Ü ÎÒµÄÊéÇ© TXTÈ«±¾ÏÂÔØ ¡ºÊղص½ÎÒµÄä¯ÀÀÆ÷¡»

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

¿ì½Ý²Ù×÷: °´¼üÅÌÉÏ·½Ïò¼ü ¡û »ò ¡ú ¿É¿ìËÙÉÏÏ·­Ò³ °´¼üÅÌÉ쵀 Enter ¼ü¿É»Øµ½±¾ÊéĿ¼ҳ °´¼üÅÌÉÏ·½Ïò¼ü ¡ü ¿É»Øµ½±¾Ò³¶¥²¿! Èç¹û±¾ÊéûÓÐÔĶÁÍ꣬ÏëÏ´μÌÐø½Ó×ÅÔĶÁ£¬¿ÉʹÓÃÉÏ·½ "Êղص½ÎÒµÄä¯ÀÀÆ÷" ¹¦ÄÜ ºÍ "¼ÓÈëÊéÇ©" ¹¦ÄÜ£¡



¡ö¡¡¡¡¡¡CFE_BOLD£¬CFE_ITALIC£¬CFE_STRIKEOUTºÍCFE_UNDERLINE¡ª¡ª´ÖÌå×Ö·û¡¢Ð±Ìå×Ö·û¡¢´øɾ³ýÏߺʹøÏ»®Ïß¡£

¡ö¡¡¡¡¡¡CFE_PROTECTED¡ª¡ª×Ö·ûÊÇÊܱ£»¤µÄ£¬Æóͼ¸Ä±ä×Ö·ûµÄ»°¿Ø¼þ»áÏò¸¸´°¿Ú·¢ËÍÒ»¸öEN_PROTECTED֪ͨÏûÏ¢¡£

¡ñ¡¡¡¡¡¡yHeight¡ª¡ª×Ö·û¸ß¶È£¬µ¥Î»ÊÇ1/1¡¡440¡¡Ó¢´ç£¨»ò1/20°õ£©£¬Èç¹ûÕâÀïÊÇ180£¬»»Ëãµ½¡°×ÖÌåÑ¡Ôñ¡±Í¨ÓöԻ°¿òÖеijߴç¾ÍÊÇ9°õ£¨180¡Á1/20=9£©¡£

¡ñ¡¡¡¡¡¡yOffset¡ª¡ª´Ó»ùÏßËãÆðµÄ×Ö·ûÆ«ÒÆ£¬µ¥Î»Í¬ÉÏ£¬Èç¹û¸Ã³ÉÔ±ÊÇÕýÖµ£¬×Ö·ûÏÔʾΪÉϱꣻÈç¹ûÊǸºÖµ£¬×Ö·ûÏÔʾΪϱꡣ

¡ñ¡¡¡¡¡¡crTextColor¡ª¡ªÕýÎÄÑÕÉ«£¬Èç¹ûÔÚdwEffects×Ö¶ÎÖÐÖ¸¶¨ÁËCFE_AUTOCOLOR±êÖ¾£¬ÄÇôÕâ¸öÖµ»á±»ºöÂÔ¡£

¡ñ¡¡¡¡¡¡bCharSetºÍbPitchAndFamily¡ª¡ª×Ö·û¼¯¡£

¡ñ¡¡¡¡¡¡szFaceName¡ª¡ªÓÃ×Ö·û´®±íʾµÄ×ÖÌåÃû×Ö¡£

ͨ¹ýÌî³äÕâ¸ö½á¹¹²¢½«Ëüͨ¹ýEM_SETCHARFORMATÏûÏ¢´«Ë͸ø¿Ø¼þ£¬¿ÉÒԸıäÎÄ×ÖµÄЧ¹û£¨´ÖÌ塢бÌå¡¢´øɾ³ýÏß¡¢´øÏ»®Ïߵȣ©£¬ÕýÎÄÑÕÉ«£¨crTextColor£©£¬×ÖÌåÍâ¹Û£¨szFaceName£©ºÍ×ÖÌå´óС£¨yHeight£©£¬ÒÔ¼°Ê¹ÓõÄ×Ö·û¼¯µÈ¡£Ê¹ÓÃCHARFORMAT2½á¹¹¿ÉÒÔÉèÖøü¶àµÄÎı¾·ç¸ñ£¬Èç×Ö¼ä¾àÓëÕýÎı³¾°É«µÈ¡£Èç¹û²»ÐèÒªÕâЩ¶îÍâµÄ¹¦ÄÜ£¬ÄÇôֻҪʹÓÃCHARFORMAT½á¹¹¾Í¿ÉÒÔÁË¡£

Àý×Ó³ÌÐòRichedit¡£asmÖÐÖ»ÑÝʾÁËʹÓÃPlain¡¡TextģʽΪËùÓÐÎı¾ÉèÖÃ×ÖÌåµÄ·½·¨£º

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡nst

szFont¡¡¡¡db¡¡¡¡¡¡¡¡¡¡¡¡'ËÎÌå'£»0

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

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡invoke¡¡¡¡SendMessage£»hWinEdit£»EM_SETTEXTMODE£»TM_PLAINTEXT£»0

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡invoke¡¡¡¡RtlZeroMemory£»addr¡¡@stCf£»sizeof¡¡@stCf

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡mov¡¡¡¡¡¡¡¡¡¡@stCf¡£cbSize£»sizeof¡¡@stCf

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡mov¡¡¡¡¡¡¡¡¡¡@stCf¡£yHeight£»9¡¡*¡¡20

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡mov¡¡¡¡¡¡¡¡¡¡@stCf¡£dwMask£»CFM_FACE¡¡or¡¡CFM_SIZE¡¡or¡¡CFM_BOLD

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡invoke¡¡¡¡lstrcpy£»addr¡¡@stCf¡£szFaceName£»addr¡¡szFont

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡invoke¡¡¡¡SendMessage£»hWinEdit£»EM_SETCHARFORMAT£»0£»addr¡¡@stCf

³ÌÐòÊ×ÏȽ«¿Ø¼þµÄģʽÉèÖÃΪPlain¡¡Textģʽ£¬È»ºó¶¨ÒåÁËÒ»¸öÃûΪ@stCfµÄCHARFORMAT½á¹¹£¬½«½á¹¹³¤¶ÈÉèÖÃΪCHARFORMAT½á¹¹µÄ³¤¶È£¬È»ºóÔÚdwMask¡¡×Ö¶ÎÖÐʹÓÃCFM_FACE£¬¡¡CFM_SIZEºÍCFM_BOLD±êÖ¾£¬±íʾֻʹÓÃ×ÖÌå¡¢×ÖÌå´óСºÍ×ÖÌå´Öϸ²ÎÊý£¬×îºó·¢ËÍEM_SETCHARFORMATÏûÏ¢½«¿Ø¼þÖеÄÈ«²¿ÎÄ×ÖÉèÖÃΪ´óСΪ9°õ£¨Ð¡ÎåºÅ£©µÄ¡°ËÎÌ塱¡£

4¡£¡¡×°ÈëºÍ±£´æÎı¾

ÏÔÈ»£¬Ê¹ÓÃGetWindowTextºÍSetWindowTextº¯ÊýÀ´±£´æºÍ×°ÈëÎı¾ÊÇ¿ÉÐеģ¬µ«ÊÇRichEdit¿Ø¼þÖ§³ÖºÜ´óµÄÎļþ£¬µ±Îļþ×ã¹»´óµÄʱºò£¬Ê¹ÓÃÕâÖÖ·½·¨¾ÍºÜÂé·³£¬ÒòΪ±ØÐëÊ×ÏÈÒª·ÖÅäÒ»¿é×ã¹»´óµÄÄÚ´æÓÃ×ö»º³åÇø£¬ÎªÁ˽â¾öÕâ¸öÎÊÌ⣬Richedit¿Ø¼þÌṩÁËÒ»ÖÖз½·¨£¬ÄǾÍÊÇÎı¾Á÷£¨Text¡¡Streaming£©¡£

¿¼ÂÇÕâÑùÒ»ÖÖÇé¿ö£ºÎªÁË×°ÈëÎı¾£¬¿ÉÒÔÉêÇëÒ»¿é´óСºÏÊʵĻº³åÇø£¨µ±È»²»»á´óµ½ÄÜÈÝÄÉÈ«²¿Îı¾£©£¬Ã¿´Î´ÓÎļþÖжÁÈ뻺³åÇø´óСµÄÎı¾²¢Ìí¼Óµ½¿Ø¼þÖУ¬Èç´ËÑ­»·Ö±µ½¶ÁÈëÈ«²¿Îı¾£»±£´æÎı¾µÄʱºò£¬Í¬Ñù¿ÉÒÔÿ´Î´Ó¿Ø¼þÖÐÈ¡³ö»º³åÇø´óСµÄÎı¾£¬È»ºóдÈëÎļþ£¬Èç´ËÑ­»·Ö±µ½´¦ÀíÍê¿Ø¼þÖеÄÈ«²¿Îı¾¡£

Îı¾Á÷µÄ²Ù×÷·½·¨Óë´ËÀàËÆ£¬Ö»²»¹ý»º³åÇøºÍÑ­»·¶¼·â×°ÔڿؼþµÄÄÚ²¿£¬¶øÎÒÃÇͨ¹ýÌṩ»Øµ÷º¯ÊýµÄ°ì·¨Ìṩ¶ÁдÎļþµÄ¹¦ÄÜÄ£¿é£¬Richedit¿Ø¼þÑ­»·µ÷ÓÃÕâ¸öÄ£¿éÖ±µ½´¦ÀíÍêÈ«²¿µÄÄÚÈÝ¡£Ã¿´Îµ÷ÓõÄʱºò£¬¿Ø¼þͨ¹ý²ÎÊý¸æË߻ص÷º¯ÊýÒª¶ÁдµÄ×Ö½ÚÊýºÍ»º³åÇøµÄµØÖ·¡£Îı¾µÄÁ÷ÈëºÍÁ÷³öʹÓÃEM_STREAMINºÍEM_STREAMOUTÏûÏ¢£¬ÕâÁ½¸öÏûÏ¢µÄʹÓøñʽÊÇÒ»ÑùµÄ£º

¡¡¡¡¡¡¡¡invoke¡¡¡¡SendMessage£»hWinEdit£»EM_STREAMIN£»uFormat£»lpStream

¡¡¡¡¡¡¡¡invoke¡¡¡¡SendMessage£»hWinEdit£»EM_STREAMOUT£»uFormat£»lpStream

wParam²ÎÊýÖеÄuFormatÖ¸¶¨ÐèÒªÁ÷Èë/Á÷³öµÄÄÚÈÝ£¬Ëü¿ÉÒÔÊÇÒÔϵÄÈ¡Öµ£º

¡ñ¡¡¡¡¡¡SF_RTF¡ª¡ªÎı¾¸ñʽÊÇRTF¸ñʽ¡£

¡ñ¡¡¡¡¡¡SF_TEXT¡ª¡ªÎı¾ÊÇPlain¡¡Text¸ñʽ£¬Ò²¾ÍÊǼòµ¥µÄÎı¾¸ñʽ¡£

¡ñ¡¡¡¡¡¡SFF_SELECTION¡ª¡ªÁ÷²Ù×÷µÄ·¶Î§Êǵ±Ç°Ñ¡ÔñÇøÓò¡£Èç¹û½«Îı¾Á÷È룬µ±Ç°Ñ¡ÔñÇøÓò¾Í»á±»Ìæ»»£»Èç¹ûÊÇÁ÷³ö£¬ÔòÖ»ÓÐÄÇЩµ±Ç°Ñ¡¶¨µÄÎı¾²ÅÁ÷³ö¡£Èç¹ûûÓÐÖ¸¶¨Õâ¸ö±êÖ¾£¬²Ù×÷·¶Î§ÊǿؼþÖеÄËùÓÐÎı¾¡£

¡ñ¡¡¡¡¡¡SF_UNICODE¡ª¡ªÖ¸¶¨µÄÊÇ¡¡Unicode¡¡Îı¾£¨2¡£0¼°ÒÔÉÏ°æ±¾Ìṩ£©¡£

lParam²ÎÊýÖеÄlpStreamÖ¸ÏòÒ»¸öEDITSTREAM¡¡½á¹¹£¬¸Ã½á¹¹¶¨ÒåÈçÏ£º

¡¡EDITSTREAM¡¡STRUCT¡¡

¡¡¡¡¡¡¡¡dwCookie¡¡DWORD¡¡¡¡¡¡¡¡¡¡¡¡£¿¡¡¡¡¡¡£»Óû§×Ô¶¨ÒåÖµ

¡¡¡¡¡¡¡¡dwError¡¡DWORD¡¡¡¡¡¡¡¡¡¡¡¡¡¡£¿¡¡¡¡¡¡£»ÓÃÀ´·µ»ØÁ÷²Ù×÷¹ý³ÌÖеĴíÎóÐÅÏ¢

¡¡¡¡¡¡¡¡pfnCallback¡¡DWORD¡¡¡¡¡¡£¿¡¡¡¡¡¡£»»Øµ÷º¯ÊýµØÖ·

EDITSTREAM¡¡ENDS

½á¹¹Öи÷×ֶεÄ˵Ã÷ÈçÏ£º

¡ñ¡¡¡¡¡¡dwCookie¡ª¡ªÓ¦ÓóÌÐò×Ô¶¨ÒåµÄÊýÖµ£¬Õâ¸öÊýÖµ½«»á´«µÝ¸ø»Øµ÷º¯Êý¡£

¡ñ¡¡¡¡¡¡dwError¡ª¡ªÖ¸Ê¾Á÷²Ù×÷µÄ½á¹û£¬0˵Ã÷ûÓдíÎó¡£

¡ñ¡¡¡¡¡¡pfnCallback¡ª¡ªÖ¸Ïò»Øµ÷º¯Êý£¬¸Ãº¯ÊýÓÉÓû§¶¨Ò壬²¢ÓÉRichEdit¿Ø¼þµ÷ÓÃÀ´´«ÊäÎı¾¡£RichEdit¿Ø¼þ½«Îı¾·Ö³É¶à¸ö²¿·Ö£¬Ã¿´Îµ÷Óøú¯Êý´¦ÀíÒ»¸ö²¿·Ö£¬Ö±µ½È«²¿Îı¾±»´¦ÀíΪֹ¡£

»Øµ÷º¯ÊýµÄ¶¨ÒåÈçÏ£º

EditStreamCallback¡¡¡¡proc¡¡¡¡¡¡¡¡dwCookie£»lpBuffer£»NumBytes£»¡¡pBytesTransferred

¿Ø¼þ´«µÝ¸ø»Øµ÷º¯ÊýµÄ²ÎÊý˵Ã÷ÈçÏ£º

¡ñ¡¡¡¡¡¡dwCookie¡ª¡ª¾ÍÊÇÏûÏ¢ÖÐÖ¸¶¨µÄEDITSTREAM½á¹¹Öж¨ÒåµÄdwCookieÖµ¡£

¡ñ¡¡¡¡¡¡lpBuffer¡ª¡ªÖ¸ÏòRichedit¿Ø¼þÌṩµÄ»º³åÇø¡£¶ÔÓÚÁ÷Èë²Ù×÷£¬ÕâÀïÓÃÀ´½ÓÊÕÁ÷ÈëµÄÎı¾£»¶ÔÓÚÁ÷³ö²Ù×÷£¬ÕâÀï´æ·ÅÒªÁ÷³öµÄÎı¾¡£

¡ñ¡¡¡¡¡¡NumBytes¡ª¡ª±¾´Îµ÷ÓÃÖпÉÒÔ²Ù×÷µÄ×Ö½ÚÊý¡£¶ÔÓÚÁ÷Èë²Ù×÷£¬±íʾ¿ÉÒÔдÈ뻺³åÇøµÄ×î´ó×Ö½ÚÊý£»¶ÔÓÚÁ÷³ö²Ù×÷£¬±íʾÐèÒªÁ÷³öµÄÎı¾µÄ³¤¶È¡£

¡ñ¡¡¡¡¡¡pBytesTransferred¡ª¡ªÖ¸ÏòÒ»¸öË«×Ö£¬ÓÉÓÚʵ¼Ê²Ù×÷µÄ×Ö½ÚÊý²»Ò»¶¨µÈÓÚNumBytes²ÎÊýÖ¸¶¨µÄÊýÖµ£¨±ÈÈçÁ÷Èëʱ¶Áµ½ÁËÎļþβ²¿£©£¬²Ù×÷ºó±ØÐëÔÚÕâÀï·µ»Øʵ¼Ê²Ù×÷µÄ×Ö½ÚÊý¡£

»Øµ÷º¯Êý·µ»Ø0˵Ã÷²Ù×÷³É¹¦£¬ÕâÑùÈç¹û»¹ÓÐÊý¾ÝÐèÒª¶Áд£¬RichEdit¿Ø¼þ¾Í»á¼ÌÐøµ÷ÓÃËü¡£Èç¹û²Ù×÷Öз¢ÉúÁË´íÎ󣬶øÇÒ³ÌÐòÐèҪֹͣ²Ù×÷µÄ»°£¬¿ÉÒÔ·µ»ØÒ»¸ö·Ç0Öµ£¬ÕâʱRichedit¿Ø¼þ¾Í»á¶ªÆúlpBufferÖ¸ÏòµÄÊý¾Ý²¢Í£Ö¹¶Ô»Øµ÷º¯ÊýµÄ¼ÌÐøµ÷Óᣵ±ÏûÏ¢·µ»ØµÄʱºò£¬Óɻص÷º¯Êý·µ»ØµÄ´íÎó/³É¹¦Öµ»áÔÚEDITSTREAM½á¹¹µÄdwError×Ö¶ÎÖзµ»Ø£¬ËùÒÔ¿ÉÒÔÔÚSendMessage·µ»ØºóÒԴ˼ì²éÁ÷²Ù×÷ÊÇ·ñ³É¹¦¡£

ÔÚÀý×ÓÎļþÖУ¬½øÐÐÁ÷²Ù×÷ÈçÏ£º

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

£»¡¡»Øµ÷º¯Êý

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

_ProcStream¡¡¡¡¡¡¡¡¡¡proc¡¡uses¡¡ebx¡¡edi¡¡esi¡¡_dwCookie£»_lpBuffer£»_dwBytes£»_lpBytes

¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£if¡¡¡¡¡¡¡¡¡¡_dwCookie

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡invoke¡¡¡¡¡¡ReadFile£»hFile£»_lpBuffer£»_dwBytes£»_lpBytes£»0

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

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡invoke¡¡¡¡¡¡WriteFile£»hFile£»_lpBuffer£»_dwBytes£»_lpBytes£»0

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

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡xor¡¡¡¡¡¡¡¡¡¡eax£»eax

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

¡¡¡¡¡¡¡¡

_ProcStream¡¡¡¡¡¡¡¡¡¡endp

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

£»¡¡Á÷³ö²Ù×÷

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

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡mov¡¡¡¡¡¡¡¡¡¡@stES¡£dwCookie£»FALSE¡¡¡¡¡¡¡¡£»¡¡¡¡@stESÊÇÒ»¸öEDITSTREAM½á¹¹

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡mov¡¡¡¡¡¡¡¡¡¡@stES¡£pfnCallback£»offset¡¡_ProcStream

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡invoke¡¡¡¡SendMessage£»hWinEdit£»EM_STREAMOUT£»SF_TEXT£»addr¡¡@stES

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

£»¡¡Á÷Èë²Ù×÷

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

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡mov¡¡¡¡¡¡¡¡¡¡@stES¡£dwCookie£»TRUE

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡mov¡¡¡¡¡¡¡¡¡¡@stES¡£pfnCallback£»offset¡¡_ProcStream

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡invoke¡¡¡¡SendMessage£»hWinEdit£»EM_STREAMIN£»SF_TEXT£»addr¡¡@stES

³ÌÐòÖÐÁ÷ÈëºÍÁ÷³ö²Ù×÷µÄ»Øµ÷º¯ÊýʹÓÃͬһ¸ö×Ó³ÌÐò£¬Í¨¹ýÉèÖÃEDITSTREAM½á¹¹µÄ×Ô¶¨ÒåÖµdwCookie×Ö¶ÎÀ´±íʾ½øÐеÄÊÇÁ÷È뻹ÊÇÁ÷³öµÄ²Ù×÷£¬×Ó³ÌÐòÖÐͨ¹ýÅжÏdwCookie²ÎÊýÊÇTRUE»¹ÊÇFALSEÀ´¾ö¶¨½øÐжÁÎļþ»¹ÊÇдÎļþµÄ²Ù×÷£¨¶ÁдÎļþµÄº¯ÊýReadFileºÍWriteFileµÄÓ÷¨Çë²Î¿¼µÚ10Õ£©¡£



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


µÚ9Õ¡¡Í¨Óÿؼþ


9¡£4¡¡Ê¹ÓÃRichedit¿Ø¼þ£¨9£©

¡¡¡¡¡¡¡¡
5¡£¡¡²éÕÒºÍÌæ»»

ÔÚRichedit¿Ø¼þÖпÉÒÔͨ¹ý·¢ËÍEM_FINDTEXT»òÕßEM_FINDTEXTEXÏûÏ¢À´Íê³É²éÕÒ×Ö·û´®µÄ¹¦ÄÜ£¬EM_FINDTEXTEXÏûÏ¢ÊÇEM_FINDTEXTÏûÏ¢µÄÀ©Õ¹£¬ËüÃǵÄÓ÷¨ÊÇ£º

invoke¡¡¡¡SendMessage£»hWinEdit£»EM_FINDTEXT£»uFlags£»lpFindText

invoke¡¡¡¡SendMessage£»hWinEdit£»EM_FINDTEXTEX£»uFlags£»lpFindTextEx

ÏûÏ¢µÄwParam²ÎÊýÖеÄuFlagsÖ¸¶¨²éÕÒµÄÑ¡ÏËü¿ÉÒÔÊÇÒÔÏÂÈ¡ÖµµÄ×éºÏ£º

¡ñ¡¡¡¡¡¡FR_DOWN£¨2¡£0°æ±¾¼°ÒÔÉÏʹÓã©¡ª¡ªÏòºó²éÕÒ£¬²»ÉèÖõĻ°±íʾÏòÇ°²éÕÒ¡£

¡ñ¡¡¡¡¡¡FR_MATCHCASE¡ª¡ª²éÕÒ×Ö·û´®Çø·Ö´óСд¡£

¡ñ¡¡¡¡¡¡FR_WHOLEWORD¡ª¡ªÆ¥ÅäÕû¸öµ¥´Ê¡£

EM_FINDTEXTµÄlParam²ÎÊýÖ¸ÏòÒ»¸öFINDTEXT½á¹¹£¬¶øEM_FINDTEXTEXÏûÏ¢µÄlParam²ÎÊýÖ¸ÏòÒ»¸öFINDTEXTEX½á¹¹£¬ÕâÁ½¸ö½á¹¹µÄ¶¨ÒåÈçÏ£º

FINDTEXT¡¡STRUCT

¡¡¡¡chrg¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡CHARRANGE¡¡¡¡¡¡¡¡£»²éÕÒÇøÓò

¡¡¡¡lpstrText¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡DWORD¡¡¡¡¡¡¡¡¡¡¡¡£¿¡¡¡¡¡¡£»²éÕÒ×Ö·û´®µØÖ·

FINDTEXT¡¡ENDS

FINDTEXTEX¡¡STRUCT

¡¡¡¡chrg¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡CHARRANGE¡¡¡¡¡¡£»²éÕÒÇøÓò

¡¡¡¡lpstrText¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡DWORD¡¡¡¡¡¡¡¡¡¡¡¡£¿¡¡¡¡¡¡£»²éÕÒ×Ö·û´®µØÖ·

¡¡¡¡chrgText¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡CHARRANGE¡¡¡¡¡¡£»Èç¹ûÕÒµ½ÔòÔÚÕâÀï·µ»ØÕÒµ½ÎÄ×ÖµÄÆðʼ/½áÊøλÖÃ

FINDTEXTEX¡¡ENDS

¿ÉÒÔ¿´³ö£¬EM_FINDTEXTEXÏûÏ¢µÄÀ©Õ¹Ö®´¦ÔÚÓÚÖ±½ÓÔÚchrgText×Ö¶ÎÖзµ»ØÕÒµ½ÎÄ×ÖµÄÇøÓò£¬³ÌÐò¿ÉÒÔÂíÉÏʹÓÃÕâ¸öÇøÓòÊý¾Ý½øÐÐÆäËû²Ù×÷£¬¶øEM_FINDTEXTÏûÏ¢±ØÐë¸ù¾ÝÕÒµ½µÄλÖúͲéÕÒ×Ö·û´®µÄ³¤¶È×Ô¼º¼ÆËãÕâ¸öÇøÓò¡£

Á½¸öÏûÏ¢µÄ·µ»ØÖµÊÇÒ»ÑùµÄ£¬Èç¹ûûÓÐÕÒµ½Ö¸¶¨ÎÄ×ÖÔò·µ»Ø£¿1£¬·ñÔò·µ»ØÕÒµ½ÎÄ×ÖµÄÆðʼλÖá£Àý×Ó³ÌÐòÔÚ_FindText×Ó³ÌÐòÖÐÍê³É²éÕÒ¹¦ÄÜ£¬Õâ¸ö×Ó³ÌÐò·Ö±ðÔÚ¡°²éÕÒÏÂÒ»¸ö¡±¡¢¡°²éÕÒÉÏÒ»¸ö¡±ºÍ¡°²éÕÒÎÄ×Ö¡±Í¨ÓöԻ°¿òµÄ×Ô¶¨ÒåÏûÏ¢Öб»µ÷Óã¬×Ó³ÌÐòÖÐͨ¹ýÏÂÃæµÄ´úÂëÀ´ÉèÖòéÕÒÇøÓò£º

¡¡¡¡¡¡¡¡invoke¡¡¡¡SendMessage£»hWinEdit£»EM_EXGETSEL£»0£»addr¡¡@stFindText¡£chrg

¡¡¡¡¡¡¡¡¡£if¡¡¡¡¡¡¡¡¡¡stFind¡£Flags¡¡&¡¡FR_DOWN

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡push¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡@stFindText¡£chrg¡£cpMax

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡pop¡¡¡¡¡¡¡¡¡¡@stFindText¡£chrg¡£cpMin

¡¡¡¡¡¡¡¡¡£endif

¡¡¡¡¡¡¡¡mov¡¡¡¡¡¡¡¡¡¡@stFindText¡£chrg¡£cpMax£»¡­1

µ±ÕÒµ½Ò»¸öÆ¥Åä×Ö·û´®ºó£¬×Ö·û´®±»ÉèÖÃΪѡÔñÇøÓò£¬Èç¹ûÏòϼÌÐø²éÕÒÏÂÒ»¸öµÄ»°£¬±ØÐ뽫Õâ¸öÑ¡ÔñÇøÓòµÄ½áÊøλÖÃÓÃ×öÏÂÒ»´Î²éÕÒµÄÆðʼµã£¬ËùÒÔ³ÌÐò·¢ËÍEM_EXGETSELÏûÏ¢»ñÈ¡Ñ¡ÔñÇøÓò²¢½«cpMax×ֶηŵ½cpMin×Ö¶ÎÖУ¬²¢½«cpMax×Ö¶ÎÉèÖÃΪ¡­1£¬±íʾһֱ²éÕÒµ½È«²¿Îı¾µÄ×îºó¡£

ÔÚµÚ8ÕÂÖÐÒѾ­ÓÐËù½éÉÜ£º¡°²éÕÒÎÄ×Ö¡±Í¨ÓöԻ°¿òʹÓÃFINDREPLACE½á¹¹£¬²»ÖªµÀÊÇÇɺϻ¹ÊÇMicrosoftµÄ¹ÊÒâ°²ÅÅ£¬FINDREPLACE½á¹¹ÖеÄFlags×ֶκÍEM_FINDTEXTEXÏûÏ¢ÖеÄwParam²ÎÊýµÄ±êÖ¾¶¨ÒåÊÇÒ»ÑùµÄ£¬ËùÒÔ³ÌÐòÖ±½ÓÈ¡³öFlags×ֶΣ¬È»ºóÆÁ±ÎµôFR_MATCHCASE£¬FR_DOWNºÍFR_WHOLEWORDµÈ²»ÐèҪʹÓõıêÖ¾ÒԺ󣬾ͿÉÒÔÖ±½ÓÔÚÏûÏ¢µÄwParam²ÎÊýÖÐʹÓÃÁË£º

¡¡¡¡¡¡¡¡mov¡¡¡¡¡¡¡¡¡¡ecx£»stFind¡£Flags

¡¡¡¡¡¡¡¡and¡¡¡¡¡¡¡¡¡¡ecx£»FR_MATCHCASE¡¡or¡¡FR_DOWN¡¡or¡¡FR_WHOLEWORD

¡¡¡¡¡¡¡¡invoke¡¡¡¡SendMessage£»hWinEdit£»EM_FINDTEXTEX£»ecx£»addr¡¡@stFindText

ÕÒµ½×Ö·û´®ÒԺ󣬽øÐÐÌæ»»²Ù×÷¾Í²»ÊÇÒ»¼þ¸´ÔÓµÄÊÂÇéÁË£¬ÒòΪFINDTEXTEX½á¹¹µÄchrgText×Ö¶ÎÖÐÒѾ­·µ»ØÁËÕÒµ½Îı¾µÄÆðʼºÍ½áÊøλÖ㬽«ËüÉèÖÃΪѡÔñÇøÓòÒÔºó¾Í¿ÉÒÔͨ¹ý·¢ËÍEM_REPLACESELÏûÏ¢½øÐÐÌæ»»²Ù×÷ÁË¡£

9¡£4¡£3¡¡¡¡Richedit¿Ø¼þµÄ֪ͨÏûÏ¢

Richedit¿Ø¼þÒ²¿ÉÒÔÏò¸¸´°¿Ú·¢ËͶàÖÖ֪ͨÏûÏ¢£¬Ê¹Óá°¿ÉÒÔ¡±Ò»´ÊµÄÒâ˼ÊÇ£¬¿Ø¼þÔÚĬÈÏ״̬ϲ¢²»·¢ËÍ֪ͨÏûÏ¢£¬Èç¹ûÐèÒª¿Ø¼þ·¢ËÍij¸öÏûÏ¢£¬±ØÐëÊ×ÏȶԿؼþ½øÐÐÉèÖá£Í¨¹ýÏòRichedit¿Ø¼þ·¢ËÍEM_SETEVENTMASKÏûÏ¢¿ÉÒÔ¼¤»îÐèÒªµÄ֪ͨÏûÏ¢£º

¡¡¡¡¡¡¡¡invoke¡¡¡¡SendMessage£»hWinEdit£»EM_SETEVENTMASK£»0£»dwMask

dwMaskÊÇʼþÑÚÂ룬¿ÉÒÔÊÇÏÂÃæ±êÖ¾µÄ×éºÏ£¬·Ö±ð´ú±í¼¤»î²»Í¬µÄ֪ͨÏûÏ¢£º

¡ñ¡¡¡¡¡¡ENM_CHANGE¡ª¡ªÔÊÐíEN_CHANGE֪ͨÂ룬±¾ÏûÏ¢ÔÚÓû§µÄ²Ù×÷¿ÉÄܸıä¿Ø¼þÖеÄÎı¾µÄʱºò·¢ËÍ¡£

¡ñ¡¡¡¡¡¡ENM_CORRECTTEXT¡ª¡ªÔÊÐíEN_CORRECTTEXT֪ͨÂë¡£

¡ñ¡¡¡¡¡¡ENM_DRAGDROPDONE¡ª¡ªÔÊÐíEN_DRAGDROPDONE֪ͨÂ룬±¾ÏûÏ¢ÔÚÓû§Íê³ÉÁËÒ»¸öÍϷŲÙ×÷ºó·¢ËÍ¡£

¡ñ¡¡¡¡¡¡ENM_DROPFILES¡ª¡ªÔÊÐíEN_DROPFILES֪ͨÂ룬±¾ÏûÏ¢ÔÚÓû§½«Ò»¸öÎļþÍϷŽø¿Ø¼þºó·¢ËÍ¡£

¡ñ¡¡¡¡¡¡ENM_KEYEVENTS¡ª¡ªÔÊÐíΪ¼üÅÌÏûÏ¢·¢ËÍEN_MSGFILTER֪ͨÂë¡£

¡ñ¡¡¡¡¡¡ENM_MOUSEEVENTS¡ª¡ªÔÊÐíΪÊó±êÏûÏ¢·¢ËÍEN_MSGFILTER֪ͨÂë¡£

¡ñ¡¡¡¡¡¡ENM_PROTECTED¡ª¡ªÔÊÐí·¢ËÍEN_PROTECTED֪ͨÂë¡£

¡ñ¡¡¡¡¡¡ENM_SCROLL¡ª¡ªÔÊÐí·¢ËÍEN_HSCROLLºÍEN_VSCROLL֪ͨÂ
·µ»ØĿ¼ ÉÏÒ»Ò³ ÏÂÒ»Ò³ »Øµ½¶¥²¿ ÔÞ£¨0£© ²È£¨0£©
¿ì½Ý²Ù×÷: °´¼üÅÌÉÏ·½Ïò¼ü ¡û »ò ¡ú ¿É¿ìËÙÉÏÏ·­Ò³ °´¼üÅÌÉ쵀 Enter ¼ü¿É»Øµ½±¾ÊéĿ¼ҳ °´¼üÅÌÉÏ·½Ïò¼ü ¡ü ¿É»Øµ½±¾Ò³¶¥²¿!
ÎÂÜ°Ìáʾ£º ο´Ð¡ËµµÄͬʱ·¢±íÆÀÂÛ£¬Ëµ³ö×Ô¼ºµÄ¿´·¨ºÍÆäËüС»ï°éÃÇ·ÖÏíÒ²²»´íŶ£¡·¢±íÊéÆÀ»¹¿ÉÒÔ»ñµÃ»ý·ÖºÍ¾­Ñé½±Àø£¬ÈÏÕæдԭ´´ÊéÆÀ ±»²ÉÄÉΪ¾«ÆÀ¿ÉÒÔ»ñµÃ´óÁ¿½ð±Ò¡¢»ý·ÖºÍ¾­Ñé½±ÀøŶ£¡