![]() |
#2
bczgvip2013-11-20 21:58
|

Dim Pais(52) As PaiType '定义了52个结构数组元素用作牌信息
Dim DllObj as Object '定义一个Dll动态链接库对象
Dim StrName as String
Private Type PaiType '定义一个结构体为PaiType
PaiZhi As Integer
PaiHua As Integer
Pai As Integer
End Type
Private Sub Form_Load()
StrName = "GameLan"
Shell ("regsvr32 " & App.Path & "\" & StrName & ".dll /s") '动态链接库链接
Set DllObj = CreateObject(StrName & ".GameClass")
……
……
……
Call DllObj.XiPaiGuoCheng(Pais) ’执行动态链接库的洗牌过程--实参为结构数组名

End Sub
'动态链接库文件GameLan.Dll内的函数
Public Sub XiPaiGuoCheng(Pais_c() As PaiType) '定义洗牌过程--形参为区别实参在结构数名后加了“_c”
……
……
……
End Sub
'上述结构体如果只传递在当前窗体中的函数就可以通过编译并且能正常运行!