要用VB调用一个Delphi写的Dll,Pascal的函数声明如下:
Function GSMConnect (CommNo:Integer):Boolean ;stdcall;
说明:硬件边通就返回true,否则返回false我用VB的Boolean来接收,应该不行(总返回true),因为VB的boolean是两个字节的,而Delphi的是一个字节的,所以我用BYTE来接受,可值还是不对,无论是否为真,我接受到的都是"0",请大家用帮我看看,哪儿出问题了!
'声明函数
Public Declare Function GSMConnect Lib "D:\GSM3.0\HRHGSM.dll" (ByVal CommNo As Long) As Byte 
‘调用函数
Private Sub cmdLink_Click()
If Me.cmbCom.ListIndex = -1 Then
    MsgBox "请选择串口号"
Else
Dim l As Long
l = CLng(Me.cmbCom.ListIndex + 1)
MsgBox GSMConnect(l) '始终为0,硬件是设问题的
End IfEnd Sub