我需要vbs调用dll中的函数,输出类型为float,但是得到的结果就一直不对
float _stdcall ReadCoilsStatusModbusRTU(float iDevAdd, float iAddress, float iLength)
{
int i;
float rtv;
rtv = iDevAdd+iAddress+iLength;
return rtv;
}
这个是我最简化的dll输出函数,然后我的vbs文件如下:
Option Explicit
Dim UserWrap,rtv,Arg,i
Set UserWrap = CreateObject("DynamicWrapper")
UserWrap.Register"ModbusDLL.dll", "ReadCoilsStatusModbusRTU","I=ttt","f=s","R=t"
CSng(rtv) = UserWrap.ReadCoilsStatusModbusRTU(1.0,2.0,3.0)
MsgBox rtv
请大神告知,真心不知道为什么输出的rtv一直不对,本人小白一个,最近需要用到脚本才在网上搜了下,但是一直没用对,求帮助
float _stdcall ReadCoilsStatusModbusRTU(float iDevAdd, float iAddress, float iLength)
{
int i;
float rtv;
rtv = iDevAdd+iAddress+iLength;
return rtv;
}
这个是我最简化的dll输出函数,然后我的vbs文件如下:
Option Explicit
Dim UserWrap,rtv,Arg,i
Set UserWrap = CreateObject("DynamicWrapper")
UserWrap.Register"ModbusDLL.dll", "ReadCoilsStatusModbusRTU","I=ttt","f=s","R=t"
CSng(rtv) = UserWrap.ReadCoilsStatusModbusRTU(1.0,2.0,3.0)
MsgBox rtv
请大神告知,真心不知道为什么输出的rtv一直不对,本人小白一个,最近需要用到脚本才在网上搜了下,但是一直没用对,求帮助
