Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

vbÔÚµ÷ÓÃAPIµÄÒ»¸öBug¿ÉÄܵ¼ÖÂÄÚ´æÐ¹Â¶

ÆäʵÕâ¸öÎÊÌâÎÒºÜÔçºÜÔçÒÔǰ¾Í·¢ÏÖÁË£¬Ö»ÊÇһֱûÁôÒ⣬Ҳ²»ÔÚÒâ¡£½ñÌìÎÞÒâÖÐÓÖÓÃVBдÁËÒ»¸ö³ÌÐòÈ«²¿Ê¹ÓÃNTDLLµ¼³öº¯Êý±àд£¬ÓÖ³öÏÖÁËÕâÑùµÄÇé¿ö£¬ÕâÑù¾ÍÓɲ»µÃÎÒ²»×¢ÒâÁË£¬¾­¹ýÎҵķ´¸´²âÊÔÒÔ¼°·´»ã±àÑéÖ¤£¬Ö¤ÊµÁËvb6_sp6ÔÚµ÷ÓÃijЩAPI(²âÊÔµÄÓ¦¸ÃÓкܶàAPI´æÔÚÕâÑùµÄÎÊÌâ)´æÔÚÄÚ´æÐ¹Â¶ÎÊÌâ»òÕßÊǺ¯Êýµ÷ÓÃʧ°Ü¡£Çë´ó¼ÒÏÈ¿´ÎÒдµÄ¼òµ¥Á½¶Î´úÂë¡£
´úÂëÒ»£º
Option Explicit
Private Const MEM_RELEASE = &H8000
Private Const MEM_COMMIT = &H1000
Private Const PAGE_EXECUTE_READWRITE = &H40
Private Declare Function VirtualAlloc Lib "kernel32" (lpAddress As Any, ByVal dwSize As Long, ByVal flAllocationType As Long, ByVal flProtect As Long) As Long
Private Declare Function VirtualFree Lib "kernel32" (lpAddress As Any, ByVal dwSize As Long, ByVal dwFreeType As Long) As Long
Private Sub Code1()
    Dim Base As Long
    Base = VirtualAlloc(ByVal 0&, 100, MEM_COMMIT, PAGE_EXECUTE_READWRITE)
    If Base Then
        MsgBox Hex(Base)
        MsgBox VirtualFree(ByVal Base, 0, MEM_RELEASE)
        MsgBox Hex(GetLastError)
    End If
End Sub
Õâ¶Î´úÂëÊÇÉêÇëÒ»¶ÎÄڴ棬ȻºóÂíÉÏÊÍ·ÅËü£¬´úÂëûʲôÄÑÒÔÀí½âµÄ·Ç³£¼òµ¥¡£´ó¼Ò×Ðϸ¿´´úÂëÉϺÃÏñÒ²²»´æÔÚÓÐʲôÎÊÌ⣬ÄÇôÎÊÌâÔÚʲôµØ·½ÄØ£¿
ÎÒÒ»¾äÒ»¾äÀ´½âÎöÊ×ÏÈ“Base = VirtualAlloc(ByVal 0&, 100, MEM_COMMIT, PAGE_EXECUTE_READWRITE)”
ÕâÐдúÂëÉêÇëÁËÒ»¶Î³¤100×Ö½ÚµÄÄÚ´æ¸ú×Ù½á¹û³É¹¦ÉêÇëÁ˵óöijµØÖ·£¬È»ºóÎÒÓÃmsgbox°ÑµØÖ·ÏÔʾ³öÀ´
ÕâʱÕâ¶ÎµØÖ·ÊÇ¿ÉÓõ쬴ó¼Ò¿ÉÒÔʹÓÃһЩÄÚ´æ²ì¿´±à¼­¹¤¾ß£¬±ÈÈç±ùÈÐÖ®ÀàµÄ¡£È»ºóµ÷ÓÓVirtualFree ByVal Base, 0, MEM_RELEASE"ÊÍ·ÅÄڴ棬ʧ°ÜÁË¡£ÎÒ¼ì²éÁ˺ܾòÎÊýºÍAPIÉùÃ÷¾ùû·¢ÏÖÓÐʲôÎÊÌâÄÇôÎÊÌâ³öÔÚʲôµØ·½ÄØ£¿ÎªÁËÇóÖ¤ÎÒдÁË´úÂë¶þ£¬Ò²¾ÍÊÇ´úÂëÒ»×îÖÕÔÚRing3²ãµ÷ÓõÄAPIº¯Êý
´úÂë¶þ£º
Option Explicit
Private Const MEM_RELEASE = &H8000
Private Const MEM_COMMIT = &H1000
Private Const PAGE_EXECUTE_READWRITE = &H40
Private Declare Function Vi


Ïà¹ØÎĵµ£º

ÖØÊ°VBÖ®Èý£¬¶þ½øÖÆÎļþƪ

ÖØÊ°VBÖ®Èý£¬¶þ½øÖÆÎļþƪ
PMP ¹Ø¾¢ËÉ
     ¹íʹÉñ²î£¬09Äê12ÔÂÈëÖ°µÄ¹«Ë¾ÈÔʹÓÃVB¿ª·¢Èí¼þ£¬ËäÈ»²¢·Çרְ¿ª·¢£¬µ«Ò²²»µÃ²»ÔÚʸô4ÄêÖ®ºó£¬ÖØÐÂʹÓÃVB¡£
¶ÁÈ¡¡¢Ð޸Ķþ½øÖÆÎļþÈÔÊǴ󲿷ֱà³ÌÓïÑԵĻù±¾¿ª·¢¼¼ÄÜ¡£¿ÉÒÔÌá¸ß´¦ÀíÎļþЧÂÊ£¬Ö÷ÒªÓ¦ÓÃÔÚͨÐÅ¡¢½»»»Êý¾ÝµÈ·½Ãæ¡£
'open   filena ......

ÔÙ̸ÓÃVBÎÞ´°¿Ú͸Ã÷Usercontrol±àд͸Ã÷¸¡¶¯°´Å¥

'* ************************************************************** *
'* ³ÌÐòÃû³Æ£ºButton.ctl
'* ³ÌÐò¹¦ÄÜ£ºÍ¸Ã÷¸¡¶¯°´Å¤
'* ×÷Õߣºlyserver£¬×îºóÐÞ¸ÄÈÕÆÚ£º2009Äê11ÔÂ
'* ÁªÏµ·½Ê½£ºhttp://blog.csdn.net/lyserver
'* ************************************************************ ......

ÔÚVBµÄÀàÄ£¿éÖÐʹÓö¨Ê±Æ÷

    ³¤¾ÃÒÔÀ´£¬ÓÉÓÚ²»ÄÜÖ±½Ó»ñµÃVBÀà³ÉÔ±º¯ÊýÖ¸Õ룬ÒòΪÎÞ·¨ÔÚVBµÄÀàÄ£¿éÖÐÖ±½ÓʹÓö¨Ê±Æ÷¿Ø¼þ»ò¶¨Ê±Æ÷API£¬»ùÓÚ°³±àдµÄ»ñµÃÀà³ÉÔ±º¯ÊýÖ¸ÕëµÄº¯Êý£¬°³±àдÁËÕâ¸ö´ø¶¨Ê±Æ÷¹¦ÄܵÄÀ࣬ϣÍû¸øÅóÓÑÃÇһЩÆô·¢¡£
    Ò»¡¢Ð½¨Ò»¸öÀ࣬ÀàÃû³ÆÎªclsTimer£¬Àà´úÂëÈçÏ£º
Option Explicit
'* ** ......

VB×Ô¶¯µÇ¼¼ì²â²¢Ìí¼ÓÓòÃû

ÓôÃÆ£¬ÎÒʹÓõÄÕâ¸ö¿Õ¼äµÄIDCÉ̾¹È»Ã¿¸ôÒ»¶Îʱ¼ä¾ÍÒª¼ì²â°ó¶¨µÄÓòÃûÊÇ·ñÔÙδÌá½»±¸°¸ÁбíÖУ¬Èç¹ûÊǾÍɾ³ý£¬µ«ÊÇÈ´²»¼ì²âÎÒÊÇ·ñÌá½»Á˱¸°¸£¬°´ÕÕËûÃÇ˵·¨É¾³ýÓòÃûÒ»Ììºó²ÅÄÜÔٴΰ󶨣¬·ñÔòÕâÒ»ÌìÄÚ°ó¶¨Á˵½Ï´μì²â¾Í»áÔÙɾ³ý¡£ÕâÑùÎҾͲ»Í£µÄÔÚºǫ́¿´£¬¿´ÊÇ·ñ±»É¾³ý£¬Èç¹û±»É¾³ý£¬¾ÍÔÙ°ÑÓòÃû°ó¶¨ÉÏÈ¥£¬;(ºÜÊÜÉË£¡
ÓÚÊÇÓÃV ......

VB ʹÓÃWMI±à³Ì£¨Ò»£©

 
Óɵ×ÖÁÉÏÊÇ£º
          • ÍйÜ×ÊÔ´
          • WMI »ù´¡½á¹¹
          • ʹÓÃÕß
ÍйÜ×ÊÔ´
    ÍйÜ×ÊÔ´ÊÇÈÎÒâÂß¼­»òÎïÀí×é¼þ£¬Í¨¹ýʹÓà WMI ½øÐй«¿ªºÍ¹ÜÀí¡£¿ÉÒÔʹÓà WMI ¹ÜÀíµ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ