动态库的调用,高分求救!!!!!!!!!!!!

cmt123 2005-03-07 04:58:34
动态库:Comm32.dll
以下是函数
1. HANDLE PortOpen(int Port);

说明:打开一个通讯端口
参数说明:Port: 串口号 // 0: COM1 1: COM1 2: COM3 3: COM4 目前只支持这四个串口
返回: >0: 串口设备句柄

2. int PortSetup (HANDLE hPort, DWORD BPS, BYTE Parity, DWORD Timeout, DWORD RecMultiplier);
说明:设置端口常数
参数说明:
1. hPort: 由PortOpen建立的串口设备句柄
2. BPS: 通讯波特率 //目前恒定为4800
3. Parity: 奇偶校验常数 //一般设为4
4. Timeout: 接收超时常数 //一般设为200
5. RecMultiplier: 保留参数 //恒定设为1000

3. ClosePort (HANDLE hPort);
说明: 关闭通讯端口
参数说明:1. hPort: 由PortOpen建立的串口设备句柄
我不知道在中如何去申明定义,另VB中没有句柄类型如何定义该类型。
...全文
131 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
熊孩子开学喽 2005-03-07
  • 打赏
  • 举报
回复
有MSCOMM控件,为什么还要用这个呢?一样的功能,实现也更方便
lyj0558 2005-03-07
  • 打赏
  • 举报
回复
"动态库:Comm32.dll"是什么?
谁说你是二次封装了? 我只是说“ 动态链接库(dll)或者win api“。
那三个函数不是在"动态库:Comm32.dll"中定义的吗?
cmt123 2005-03-07
  • 打赏
  • 举报
回复
我调用的动态库是自己编译的,没有二次封装!
lyj0558 2005-03-07
  • 打赏
  • 举报
回复
那你就定义成整形,作为第二个函数和第三个函数hPort参数值使用,不就ok了?
按说应该定义成long型,因为作为调用动态链接库 (DLL) 或 Windows API函数的一个部分需传递或返回句柄时,Handle应该为long型。
cmt123 2005-03-07
  • 打赏
  • 举报
回复
Public Declare Function ClosePort Lib "COMM32" (hport As Long) As Long
Public Declare Function PortOpen Lib "COMM32" (port As Long) As Long
Public Declare Function PortSetup Lib "COMM32" (hport As Long, BPS As Long, Parity As Byte, RecTimeout As Long, RecMultiPlier As Long) As Long
cmt123 2005-03-07
  • 打赏
  • 举报
回复
返回为整型
lyj0558 2005-03-07
  • 打赏
  • 举报
回复
第一个函数PortOpen的返回值是什么类型?
cmt123 2005-03-07
  • 打赏
  • 举报
回复
不行啊,
lyj0558 2005-03-07
  • 打赏
  • 举报
回复
自己试试第一个函数PortOpen的返回值是什么类型,那么vb里就定义什么类型
lyj0558 2005-03-07
  • 打赏
  • 举报
回复
hPort应该是第一个函数PortOpen的返回值
射天狼 2005-03-07
  • 打赏
  • 举报
回复
定义成long类型试一下!!

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧