Метод IStiUSD::RawReadData (stiusd.h)
Метод iStiUSD::RawReadData считывает данные с устройства по-прежнему.
Синтаксис
HRESULT RawReadData(
LPVOID lpBuffer,
LPDWORD lpdwNumberOfBytes,
LPOVERLAPPED lpOverlapped
);
Параметры
lpBuffer
Вызывающий указатель на буфер для получения данных, считываемых с устройства.
lpdwNumberOfBytes
Указатель на DWORD, предоставленный вызывающим абонентом. Вызывающий объект загружает DWORD с количеством байтов в буфере, на который указывает lpBuffer. Драйвер должен заменить это значение числом фактически считываемых байтов.
lpOverlapped
Необязательный, предоставленный вызывающим указателем на структуру OVERLAPPED (описанную в документации по пакету SDK для Microsoft Windows).
Возвращаемое значение
Если операция выполнена успешно, метод должен вернуть S_OK. В противном случае он должен возвращать один из кодов ошибок с префиксом STIERR, определенных в stierr.h.
Замечания
Мини-driver по-прежнему реализует этот метод путем вызова ReadFile (описано в документации по пакету SDK для Windows).
Для USB-устройств можно повысить производительность, если запросы на чтение соответствуют максимальным границам размера пакета. Максимальный размер пакета можно получить путем вызова DeviceIoControl, указав код элемента управления IOCTL_GET_CHANNEL_ALIGN_RQST ввода-вывода.
Требования
Требование | Ценность |
---|---|
целевая платформа | Настольный |
заголовка | stiusd.h (include Stiusd.h) |