2024年3月31日发(作者:)

精华版VB6使用API实现串口通信

需要和客户的产品通讯,但波特率是非常规的,MScomm无法实现,原有的软件框

架和条件又不能转用VC开发底层,于是用VB6调用API实现了这个通讯功能,虽然在

VB6下这个程序还是单进程的,但实现了异步非阻塞的通信,性能相当稳定,下面是测试

程序代码

Private Sub cmdSend_Click()Sub cmdSend_Click()

'定义文件读写属性结构

Dim sa As SECURITY_ATTRIBUTES

'定义串口状态结构

Dim typCommStat As COMSTAT

'定义串口状态错误

Dim lngError As Long

'********打开串口********

Dim hCF As Long

hCF = CreateFile("COM4", _

GENERIC_READ Or GENERIC_WRITE, 0, sa, _

OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL Or FILE_FLAG_OVER

LAPPED, 0)

"打开串口:" & hCF

'********获取出错信息********

Dim errNum As Long

errNum = GetLastError()

"出错信息:" & errNum

'定义标志值

Dim flag As Long