如何使用dll中的常量??(50分)

  • 主题发起人 主题发起人 handsome1234
  • 开始时间 开始时间
H

handsome1234

Unregistered / Unconfirmed
GUEST, unregistred user!
标准dll中的定义如下:
MCS_InitComm
MCS_InitComm 函数按指定的端口号及波特率初始化串口,同时检测该端口上是否连接了读写器。
WORD MCS_InitComm(
BYTE _bPort = 0,
DWORD _dwCommBaudRate = 115200
);

参数
_bPort
读写器与PC机连接的端口号:
值 含义
0 串口一
1 串口二
2 串口三
3 串口四
 
_dwCommBaudRate
串口通讯的波特率:
值 含义

MCS_BAUD300 300bps
MCS_BAUD600 600bps
MCS_BAUD1200 1200bps
MCS_BAUD2400 2400bps
我在delphi中调用dll时,如果用:
myresult:=MCS_InitComm(0,MCS_BAUD300);
则“编译”报错:说:MCS_BAUD300没定义
如果用: myresult:=MCS_InitComm(0,300);能通过编译,查函数返回值说:是“串口通信发生错误”
我现在有2个问题:
1 是否我应该用数字作为dll中MCS_InitComm函数的参数?能通过编译,是否认为MCS_InitComm函数的参数只能为
数字?
2 从dll提供方给的函数原形中,我觉得应该可以把MCS_BAUD300等作为函数的参数,这里怎么实现呢?
 
经过几位热心的朋友的解答,我现在用:MCS_BAUD300能编译成功了!!!
运行后冲函数返回直看是“串口通信发生错误”,或者是“串口没有初始化”,
这种东西怎么解决啊?
 
没有相应的类型库,不能直接使用变量。
可以自己写一个单元文件,定义这些常量。
 
感谢我qq上的一些好友的帮忙,是他们帮我高定的,作了一个类似 c的.h的头文件
 
后退
顶部