IStiUSD::RawReadData 方法 (stiusd.h)
静态图像微型驱动程序的 IStiUSD::RawReadData 方法从静态图像设备读取数据。
语法
HRESULT RawReadData(
LPVOID lpBuffer,
LPDWORD lpdwNumberOfBytes,
LPOVERLAPPED lpOverlapped
);
参数
lpBuffer
调用方提供的指向缓冲区的指针,用于接收从设备读取的数据。
lpdwNumberOfBytes
调用方提供的指向 DWORD 的指针。 调用方使用 lpBuffer 指向的缓冲区中的字节数加载 DWORD。 驱动程序必须将此值替换为实际读取的字节数。
lpOverlapped
Microsoft Windows SDK文档) 中所述,调用方提供的指向 OVERLAPPED 结构的可选指针 (。
返回值
如果操作成功,方法应返回S_OK。 否则,它应返回 stierr.h 中定义的 STIERR 前缀错误代码之一。
注解
静态图像微型驱动程序通常通过调用 Windows SDK 文档) 中所述的 ReadFile (来实现此方法。
对于 USB 设备,如果读取请求与最大数据包大小边界保持一致,则可以实现更好的性能。 可以通过调用 DeviceIoControl 并指定 IOCTL_GET_CHANNEL_ALIGN_RQST I/O 控制代码来获取最大数据包大小。
要求
要求 | 值 |
---|---|
目标平台 | 桌面 |
标头 | stiusd.h (包括 Stiusd.h) |