dll文件中的函数好像是C语言写的,
// 函数名:int __stdcall GetMacNo(int *MacNo)
// 功能:获取卡机的卡机号(单机时)
// 参数: MacNo[0]-被读出的卡机号
// 返回值:0-成功,
// 2-PC接收超时,
// 3-应答错误
dll的文件名是COMM232.dll
函数的形参int *MacNo是指针吗?
在VB中应该怎么声明和调用该函数?
VB里也可以定义指针吗?
vb调用dll文件中的函数我是会的,但这儿的形参有一个星号才不知是怎么一回事,
我是这样声明的对吗?
Public Declare Function GetMacNo Lib "COMM232.dll" (ByVal MacNo As Integer) As Integer
又应该怎么调用呢?要先定义一个指针的变量再传给*MacNo还是要怎么做?
vb调用dll文件中的函数
答案:4 悬赏:40 手机版
解决时间 2021-02-27 18:44
- 提问者网友:兔牙战士
- 2021-02-27 06:44
最佳答案
- 五星知识达人网友:往事隔山水
- 2021-02-27 06:51
都说了MacNo是被读出的卡机号,那么就是传址的了。
dim l as integer
dim m as integer
l=GetMacNo(m)
if l=0 then
label1.caption="卡机号: " & m
elseif l=2 then
msgbox "PC接收超时"
elseif l=3 then
msgbox "应答错误"
end if
dim l as integer
dim m as integer
l=GetMacNo(m)
if l=0 then
label1.caption="卡机号: " & m
elseif l=2 then
msgbox "PC接收超时"
elseif l=3 then
msgbox "应答错误"
end if
全部回答
- 1楼网友:话散在刀尖上
- 2021-02-27 09:57
引用 COMM232.dll
就可以用 o= GetMacNo(int *MacNo)
o 就是你要的东西了
- 2楼网友:青尢
- 2021-02-27 09:04
这种com组件应该支持在注册(regsvr32 ideaoptics.dll)过后可以动态调用:
set newobj = createobject("ideaoptics.class1")debug.print newobj.getnumberofpixels(index)
- 3楼网友:逃夭
- 2021-02-27 08:23
在使用的时候可以直接使用,如果是动态库文件只需要放在对应的目录.如果activeX dll 的则需要注册.然后在应用中区添加.
动态库就当做api来使用 需要声明
declare getmacno......这样来声明
如果是active X的 则不需要只需要引用
然后在定义就可以直接使用
参数在vb中你需要声明称 getmaxno(byref aa as long)....这样.其他的你自己看着做就是了.
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯