从文件中读出数据。与fread函数相比,这个函数要明显灵活的多。该函数能够操作通信设备、管道、套接字以及邮槽。
windows将串行端口的使用当成文件,因此读取串行端口数据的函数亦使用读文件函数ReadFile.
ReadFile()函数原型:
1 2 3 4 5 6 7 8 9 |
BOOL ReadFile( HANDLE hFile, //文件的句柄 LPVOID lpBuffer, //接收数据的缓冲区 DWORD nNumberOfBytesToRead, //读取的字节数 LPDWORD lpNumberOfBytesRead, //指向实际读取字节数的指针 LPOVERLAPPED lpOverlapped //如文件打开时指定了FILE_FLAG_OVERLAPPED,那么必须,用这个参数引用一个特殊的结构。 //该结构定义了一次异步读取操作。否则,应将这个参数设为NULL ); |
ReadFile()函数参数说明:
- hFile:串行端口的Handle值,
- lpBuffer:指向存储被读取数据的地址
- nNumberOfBytesToRead:准备读取的数据字节数
- lpNumberOfBytesRead:准备读取字节数的指针
- lpOverlapped:指向overlapped I/O的结构地址,在串行通信中若不同时进行后台工作,则可不使用,设成NULL即可。