(ת)VBÖд´½¨¿ÉÒÔÊä³öº¯ÊýµÄDLL
VBÖд´½¨µÄDLLÖ»ÊÇCOM×é¼þ£¬ÎÞ·¨×÷ΪÊä³öº¯ÊýµÄDLL¡£½ñÌì´ÓÅóÓÑÄÄÀï¸ãµ½Ò»ÖÖ¿ÉÒÔ´´½¨Êä³öº¯ÊýµÄDLLµÄ·½·¨£¬ÐÀϲ֮Ó࣬²»¸Ò¶ÀÏí£¬ÏÖÔÚ°ÑËû½éÉܸø´ó¼Ò¡£
¡¡¡¡VB±àÒëÎļþʵ¼ÊÉϲÉÈ¡ÁËÁ½´Î±àÒëµÄ·½·¨£¬Ê×ÏÈÊǵ÷ÓÃc2.exe²úÉúOBJÎļþ£¬È»ºóµ÷ÓÃLink.exeÁ¬½Ó¡£Èç¹ûÔÚlinkµÄʱºòÌí¼ÓEXPORTÑ¡Ïʵ¼ÊÉÏÊÇ¿ÉÒÔÊä³öº¯ÊýµÄ¡£µ«ÊÇ£¬ÔÚVBµÄ¹¤³ÌÑ¡ÏîÖн«ÕâЩÆÁ±ÎÁË¡£¶øÇÒ¹ý·ÖµÄÊÇ£ºVBÔÚBuildÍê³Éºó»á½«OBJÎļþɾ³ý£¬ÕâÑù¾ÍÎÞ·¨Í¨¹ýLinkÀ´Êä³öº¯ÊýÁË¡£²»¹ýÎÒÕÒµ½Ò»¸ö±È½Ïö»õºµÄ±äͨµÄ·½·¨£¬¾ÍÊÇÏÈ´´½¨Ò»¸öExe¹¤³Ì£¬ÔÚForm_LoadʼþÀïÃæдÏÂÃæµÄÓï¾ä:
Private Sub Form_Load()
If (MsgBox("hehe", vbOKCancel) = vbOK) Then
Shell "link2.exe " & Command$
End If
End
End Sub
¡¡¡¡È»ºó±àÒëΪlinktemp.exe£¬½ÓÏÂÀ´½«LINK.EXE¸ÄÃûΪLink2.exe£¬½«linktemp.exe¸ÄÃûΪlink.exe¡£ÕâÑùÔÚVBµ÷ÓÃlink.exeʱ»áµ¯³ö¶Ô»°¿ò£¬´¦Àí¾Í»áÖжϡ£Õâʱ¾Í¿ÉÒÔÓлú»á½«OBJÎļþ¿½±´³öÀ´ÁË J
¡¡¡¡È»ºóÎÒ´´½¨ÁËÒ»¸öActiveX DLL¹¤³Ì£¬ÔÚÕâ¸ö¹¤³ÌÀïÃæÌí¼ÓÒ»¸öModule²¢´´½¨Ò»¸öPublicº¯Êýmathadd£º
Public Function mathadd(ByVal a As Long, ByVal b As Long) As Long
mathadd = a + b
End Function
¡¡¡¡BuilderÕâ¸ö¹¤³Ì£¬ÔÚLinkµÄʱºò¾Í»áÖжϡ£È»ºó°Ñ´´½¨µÄClass1.obj¡¢Module1.obj¡¢Project1.obj±¸·Ý³öÀ´¡£
¡¡¡¡È»ºó¾Í¿ÉÒÔµ÷ÓÃLink2.exeÁ¬½ÓOBJµ½DLLÁË£¬ÎÒµÄÁ¬½Ó´úÂëÊÇ£º
link2.exe "e:\vbdll\Class1.obj" "e:\vbdll\Module1.obj" "e:\vbdll\Project1.obj" "E:\Program Files\Microsoft Visual Studio\VB98\VBAEXE6.LIB" /ENTRY:__vbaS /EXPORT:mathadd /OUT:"e:\vbdll\ProjectOK.dll" /BASE:0×11000000 /SUBSYSTEM:WINDOWS,4.0 /VERS
¡¡¡¡×¢ÒâÀïÃæµÄ/ENTRYºÍ/EXPORT¿ª¹Ø£¬/EXPORT¿ª¹ØÉùÃ÷ÁËÊä³öº¯Êýmathadd¡£ÕâÑù¾Í´ó¹¦¸æ³ÉÁË £¬¿ÉÒÔ±»ÆäËûÓïÑÔÒýÈ룬ÀýÈçÔÚVBÖУ¬Ö»ÐèÒª£º
Private Declare Function mathadd Lib "e:\vbdll\ProjectOK.dll" (ByVal a As Long, ByVal b As Long) As Long
¡¡¡¡¾Í¿ÉÒÔÁË¡£
Ïà¹ØÎĵµ£º
http://topic.csdn.net/t/20060401/19/4656391.html
Private Declare Function GetCurrentProcess Lib "kernel32" () As Long
Private Declare Function SetPriorityClass Lib "kernel32" (ByVal hProcess As Long, ByVal dwPriorityClass As Long) As Long
Const IDLE_PRIORITY_CLASS = &H40 'нø³ÌÓ¦¸ÃÓзdz£µÍµÄ ......
Private Declare Function ReleaseCapture Lib "user32" () As Long
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
Private Const WM_NCLBUTTONDOWN = &HA1
Private Const HTCAPTION = 2
Priva ......
Òý×Ô£ºhttp://blog.csdn.net/yizia/archive/2006/09/19/1248669.aspx
·ÃÎÊÔ¶³ÌÊý¾Ý¿âµÄÇé¿öÓÐÒÔϼ¸ÖÖ£º
1£©·ÃÎÊÔ¶³ÌÊý¾Ý¿âµÄaccessÊý¾Ý¿â
2£©·ÃÎÊÔ¶³ÌmssqlÊý¾Ý¿â»òoracleµÈÆäËû¹ØϵÊý¾Ý¿â£¬µ«ÊÇÊý¾Ý¿âͨÐŶ˿ڱ»·À»ðǽ×èµ²»òÆäËûÍøÂçÔÒòÔì³ÉÎÞ·¨Ê¹Óøö˿Ú
±¾ÎĽöÔÚwindows2000 advance server,mdac2.8ϲâÊÔͨ¹ý£ ......
'¶ÁÊý¾Ýµ½¶þ½øÖÆ×Ö¶Î
Public Sub ReadfromBLOB(filed As ADODB.Field, Filen As String)
Dim DataFile As Integer, Fl As Long, Chunks As Integer
Dim Fragment As Integer, Chunk() As Byte, i As Integer
'´«ËͿ鵥λ´óС
Const ChunkSize As Integer = 16384
Dim MediaTemp As String
Dim lngOffset As Long
Di ......
Private Sub Cmd_OK_Click()
Dim ExcelAppX As Excel.Application
Dim ExcelBookX As Excel.Workbook
Dim ExcelSheetX As Excel.Worksheet
Dim a(1 To 3) As Single
Dim strFormat As Variant
......