структура SPB_TRANSFER_LIST (spb.h)
Структура SPB_TRANSFER_LIST описывает последовательности передачи ввода-вывода.
Синтаксис
typedef struct SPB_TRANSFER_LIST {
ULONG Size;
ULONG Reserved;
ULONG TransferCount;
SPB_TRANSFER_LIST_ENTRY Transfers[1];
} SPB_TRANSFER_LIST, *PSPB_TRANSFER_LIST;
Члены
Size
Размер структуры SPB_TRANSFER_LIST в байтах. Это значение размера не содержит никаких элементов массива Transfer, которые могут следовать этой структуре. Если новые члены добавляются в будущие версии этой структуры, значение размера можно использовать для определения используемой версии структуры SPB_TRANSFER_LIST.
Reserved
Зарезервировано для использования операционной системой. Установите значение нулю.
TransferCount
Количество элементов в массиве Transfer. Этот массив содержит не менее одного элемента.
Transfers[1]
Этот элемент является первым элементом в массиве SPB_TRANSFER_LIST_ENTRY структур. Каждый элемент массива описывает отдельную передачу в последовательности передачи ввода-вывода. Если массив содержит несколько элементов, дополнительные элементы массива немедленно следуют SPB_TRANSFER_LIST структуре в памяти. Передача выполняется в том порядке, в котором они отображаются в массиве, начиная с первого элемента.
Замечания
Входной буфер для запроса IOCTL_SPB_EXECUTE_SEQUENCE начинается со структуры SPB_TRANSFER_LIST. Первая передача в запрошенной последовательности передачи ввода-вывода указана в элементе Transfer этой структуры. Если последовательность содержит несколько передач, элементы массива, описывающие дополнительные передачи, немедленно следуют SPB_TRANSFER_LIST структуре.
Входной буфер для запроса IOCTL_SPB_FULL_DUPLEX начинается со структуры SPB_TRANSFER_LIST. Структура SPB_TRANSFER_LIST для этого запроса всегда указывает два буфера. Первый буфер, описываемый элементом передачи этой структуры, содержит данные для записи на устройство. Второй буфер, описываемый элементом массива, который сразу же следует SPB_TRANSFER_LIST структуре, используется для хранения данных, считываемых с устройства.
Если драйвер контроллера SPB поддерживает пользовательские запросы управления ввода-вывода (IOCTL), использующие входные или выходные буферы, используйте структуру SPB_TRANSFER_LIST для описания этих буферов. Дополнительные сведения см. в разделе Использование структуры SPB_TRANSFER_LIST для пользовательских операций ввода-вывода.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Поддерживается начиная с Windows 8. |
заголовка | spb.h |