WriteFile函数,可以将数据写入一个文件或者I/O设备。该函数比fwrite函数要灵活的多,也可将这个函数应用于对通信设备、管道、套接字以及邮槽的处理。
windows将串行端口当成文件来使用,因此写入串行端口数据的函数也是WriteFile。
WriteFile()函数原型:
1 2 3 4 5 6 7 |
BOOL WriteFile( HANDLE hFile,//文件句柄 LPCVOID lpBuffer,//数据缓存区指针 DWORD nNumberOfBytesToWrite,//要写的字节数 LPDWORD lpNumberOfBytesWritten,//用于保存实际写入字节数的存储区域的指针 LPOVERLAPPED lpOverlapped//OVERLAPPED结构体指针 ); |
WriteFile()函数参数说明:
- hFile:串行端口的Handle值,句柄
- lpBuffer:指向欲发送的数据
- nNumberOfBytesToWrite:写入的字节数
- lpNumberOfBytesWritten:指向被写入的字节数的变量地址
- lpOverlapped:指向overlapped I/O的结构地址,通常用来作背景工作时同步检查用,在串行通信中若不使用异步传输,则可不使用,设成NULL即可。