VC做的out.dll中有一个函数原型如下:
extern "c" void OutPW (BYTE car[8], BYTE tim[8], BYTE pwd [8])
我在VB中想调用这个函数,请问:
1.应该如何声明?
Public Declare Sub OutPw Lib "out.dll" (?)
2.应该如何引用?我的程序如下,我想传的两个数为99999999和20050505,请在我的程序
的基础上修改:
Option Explicit
Dim car(7) As Byte
Dim tim(7) As Byte
Dim pwd(7) As BytePrivate Sub Form_Load()
car(0) = 9
car(1) = 9
car(2) = 9
car(3) = 9
car(4) = 9
car(5) = 9
car(6) = 9
car(7) = 9
tim(0) = 2
tim(1) = 0
tim(2) = 0
tim(3) = 5
tim(4) = 0
tim(5) = 5
tim(6) = 0
tim(7) = 5
Call OutPW(car, tim, pwd)
End Sub

解决方案 »

  1.   

    Public Declare Function OutPW Lib "out.dll" (ByVal car As String, ByVal tim As String, ByVal pwd As String)
      

  2.   

    我把car,tim,pwd都设置成字符串,总是出现系统错误,某一个内存单元不能为"written"
      

  3.   

    在VB中添加一个模块,
    加入如下申明:
    Public Declare Function OutPW Lib "out.lib" (ByVal car As String, ByVal tim As String, ByVal pwd As String)
      

  4.   

    总是提示我"Bad DLL calling convention"