C++编写的WES.dll中需要调用VB提供的回调函数:VB调用WES.dll
Module.bas中:
Declare Sub SetVerificationCallBack Lib "WES.dll" (ByRef lpProc As Long)Public Sub ReadInfo(ByVal info As String, ByVal length As Long)
...处理代码   
End Sub
Form1.frm中:
Option Explicit
Function GetFuncPtr(ByVal Ptr As Long) As Long
  GetFuncPtr = Ptr
End FunctionPrivate Sub Command1_Click()
    Dim a As Long
    a = StartUsbListen()
        
    'lpProc = GetFuncPtr(AddressOf ReadInfo)
    'SetVerificationCallBack VarPtr(GetFuncPtr(AddressOf ReadInfo))
    SetVerificationCallBack AddressOf ReadInfo
    Command1.Enabled = False
End SubWES.dll调用时总是直接报错。“XXX指针引用的内存,该内存不可读”。VB.exe直接关掉了。
不知道原因到底出在哪????
VB6.0 回调函数