vbÖÆ×÷¿ÉÊä³öº¯ÊýµÄͨÓÃDLL VB_DLL_LinkÓ÷¨
vbÖÆ×÷¿ÉÊä³öº¯ÊýµÄͨÓÃDLL---VB_DLL_LinkÓ÷¨
ÂÛ̳ԽÀ´Ô½¶àÈ˹Ø×¢dll£¬ÌØ·ÖÏíÒ»ÏÂvbÖÆ×÷¿ÉÊä³öº¯ÊýµÄͨÓÃDLL---VB_DLL_LinkÓ÷¨
´ó¼ÒÖªµÀ£¬VB6Ö»ÄÜÖÆ×÷ActiveX DLLÎļþ£¬ÖÆ×÷ÄÜÊä³öº¯ÊýµÄͨÓÃDLLÎļþͨ³£ÒªÓõ½VCµÈ¹¤¾ß¡£Êµ¼ÊÉÏ£¬VBÔÚ±àÒëµÄʱºò¼ÓÒÔ¿ØÖÆ£¬¾¹ýÊʵ±´¦ÀíÒ²ÊÇ¿ÉÒÔÖÆ×÷ͨÓÃDLLµÄ¡£Ê¹ÓÃVB_DLL_Link³ÌÐò¾Í¿ÉÒÔÀûÓÃVB±àÒë³öͨÓõÄDLLÎļþ£¬´ËDLLÎļþ¿ÉÒÔ±»ÆäËû³ÌÐòµ÷Óã¬ÀýÈçÔÚVBÖÐÓÃDeclareÓï¾äµ÷Óò¢Ö´ÐÐDLLÖеĺ¯Êý¡£ÏÂÃæ½éÉÜVB_DLL_LinkµÄʹÓ÷½·¨£º
1¡¢°²×°£º
±¾Èí¼þΪ´¿ÂÌÉ«Èí¼þ¡£ÏÂÔØVB_DLL_Link.exeºó£¬Ë«»÷Ëü¾Í¿ÉÒÔ×Ô¶¯°²×°ÁË¡£ÄãÒ²¿ÉÒÔÊÖ¶¯½«Ëü¸´ÖƵ½VB6³ÌÐòĿ¼Ï£¬½«ÔLink.exe¸ÄÃûΪLink2.exe£¬ÔÙ½«VB_DLL_Link.exe¸ÄÃûΪLink.exe¼´¿É¡£
2¡¢Éú³ÉDLL£º
°²×°ºÃVB_DLL_Linkºó£¬´ò¿ªVB6£¬Ð½¨±ê×¼exe¹¤³Ì£¬¹¤³Ì²Ëµ¥>>ÒÆ³ýForm1£¬Ìí¼ÓÒ»¸ö±ê׼ģ¿éÈçModule1.bas£¬Ê×ÏÈÏòÆäÖÐдÈëDLLµÄÈë¿Ú´úÂ룺
Function DLLMain(ByVal hInstDLL As Long, ByVal fdwReason As Long, ByVal lpwReserved As Long) As Long
DLLMain = 1
End Function
×¢Òâ²ÎÊýÐÎʽһ¶¨ÒªÕýÈ·£¬·ñÔò±àÒëʧ°Ü¡£¸ß¼¶±à³ÌʱÕâЩ²ÎÊýºÜÓÐÓá£ÔÚÊ״ε÷ÓÃDLLºÍµ÷ÓÃDLLµÄÔ³ÌÐòÍ˳öʱ¾ù»áÖ´ÐÐDLLMainº¯Êý¡£Õâ¸öº¯ÊýÊDZØÐëµÄ¡£
ΪÁËʹVB²»±¨´í£¬»¹Ðè¼ÓÈëÒÔÏ´úÂ룺
Sub Main()
'È·±£VBÄܱàÒë
End Sub
È»ºó¾Í¿ÉÒÔÏòModule1.basÖÐдÈë×Ô¶¨Ò庯Êý´úÂëÁË£¬È磺
Function Add(ByVal A As Double, ByVal B As Double) As Double
MsgBox A + B
Add = A + B
End Function
Private Sub M(s As String)
MsgBox s, vbInformation
End Sub
±àдºÃ´úÂëºó£¬±£´æ¹¤³Ì£¬Ñ¡ÔñÎļþ²Ëµ¥>>Éú³Éexe£¬×¢Ò⽫ÎļþÀ©Õ¹Ãû¸ÄΪ.dll£¬·ñÔò±¾Èí¼þ²»Äܵ÷³ö¡£È»ºó±¾³ÌÐò¾Í»áÔËÐУ¬³öÏÖÒ»¸ö¶Ô»°¿òÌáʾѡÔñ´Ë¹¤³ÌÐèÒªµ¼³öµÄº¯ÊýËùÔÚµÄÄ£¿éÎļþ£¬´ËÀý¼´Module1.bas£¬Ñ¡ÔñºÃºó±¾³ÌÐòÖ÷´°¿Ú»áÁгöModule1.basÖÐËùÓеĺ¯ÊýÃû¡£Èç¹ûÓжà¸öÄ£¿é£¬¿ÉÒÔÑ¡Ôñ"´ÓÄ£¿éÌí¼Ó"°´Å¥¼ÌÐøÌí¼Óº¯ÊýÃû¡£"Ìí¼Óº¯ÊýÃû"°´Å¥¿ÉÊÖ¶¯Ìí¼ÓÏÖ´æµÄº¯ÊýµÄÃû³Æ¡£È»ºó¹´Ñ¡ÐèÒªµ¼³öµÄº¯ÊýÃû£¬µã»÷"±àÒëΪÄÜÊä³öº¯ÊýµÄDLL"°´Å¥£¬¼´¿É±àÒë³öͨÓÃDLLÎļþÁË£¬ËüÄÜÊä³öº¯ÊýÁбíÖдò¹´µÄËùÓк¯Êý¡£Èô²»ÐèÒª±àÒëΪͨÓÃDLL£¬Çëµã»÷"³£¹æ±àÒë"»ò°´Esc¼ü¡£
3¡¢Ó¦ÓÃDLL£º
±àÒëºÃµÄͨÓÃDLLÎļþ£¬¿É°´³£¹æDLLÎļþµÄµ÷Ó÷½·¨¼ÓÒÔµ÷Ó
Ïà¹ØÎĵµ£º
ÓÐʱ£¬ÎªÁËʵÏÖ¶¯Ì¬¸üУ¬ÎÒÃÇÐèÒª¶ÔÕý´¦ÓÚÔËÐÐ״̬µÄÓ¦ÓóÌÐò½øÐÐ×Ôɾ³ý£¬¾ÍÏñ360°²È«ÎÀÊ¿ÔÚÏßÉý¼¶ÄÇÑù¡£µ«ÊÇ£¬WindowsÊDz»ÔÊÐíɾ³ýÕý´¦ÓÚÔËÐÐ״̬µÄÓ¦ÓóÌÐòµÄ£¬Ôõô°ì£¿Ò»°ãÀ´Ëµ£¬ÎÒÃÇ¿ÉÒÔʹÓÃÁ½¸ö³ÌÐòÀ´ÊµÏÖ£¬Ò»¸öרߺÔð°æ±¾¼ì²âºÍɾ³ý£¬Ò»¸ö²ÅÊÇÒµÎñÐèÒªµÄÖ÷Ó¦ÓóÌÐò¡£Äܲ»Äܽ«¶þÕߺ϶þÎªÒ»ÄØ£¿´ ......
http://blog.csdn.net/cw198624/archive/2009/02/19/3911759.aspx
Ìí¼ÓÒ»¸öListBoxºÍÒ»¸ö°´Å¥
Option Explicit
Private Declare Function CloseHandle Lib "kernel32" (ByVal Handle As Long) As Long
Private Declare Function OpenProcess Lib "kernel32" (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As L ......
ÆäʵÕâ¸öÎÊÌâÎÒºÜÔçºÜÔçÒÔǰ¾Í·¢ÏÖÁË£¬Ö»ÊÇһֱûÁôÒ⣬Ҳ²»ÔÚÒâ¡£½ñÌìÎÞÒâÖÐÓÖÓÃVBдÁËÒ»¸ö³ÌÐòÈ«²¿Ê¹ÓÃNTDLLµ¼³öº¯Êý±àд£¬ÓÖ³öÏÖÁËÕâÑùµÄÇé¿ö£¬ÕâÑù¾ÍÓɲ»µÃÎÒ²»×¢ÒâÁË£¬¾¹ýÎҵķ´¸´²âÊÔÒÔ¼°·´»ã±àÑéÖ¤£¬Ö¤ÊµÁËvb6_sp6ÔÚµ÷ÓÃijЩAPI(²âÊÔµÄÓ¦¸ÃÓкܶàAPI´æÔÚÕâÑùµÄÎÊÌâ)´æÔÚÄÚ´æÐ¹Â¶ÎÊÌâ»òÕßÊǺ¯Êýµ÷ÓÃʧ°Ü¡£Çë´ó¼ÒÏÈ¿´ ......