Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
[Применимо только к KMDF]
Метод WdfDmaTransactionInitializeUsingOffset инициализирует указанную транзакцию DMA с помощью смещения байтов в цепочку MDL.
Синтаксис
NTSTATUS WdfDmaTransactionInitializeUsingOffset(
[in] WDFDMATRANSACTION DmaTransaction,
[in] PFN_WDF_PROGRAM_DMA EvtProgramDmaFunction,
[in] WDF_DMA_DIRECTION DmaDirection,
[in] PMDL Mdl,
[in] size_t Offset,
[in] size_t Length
);
Параметры
[in] DmaTransaction
Дескриптор объекта транзакции DMA, полученный драйвером из предыдущего вызова WdfDmaTransactionCreate.
[in] EvtProgramDmaFunction
Указатель на функцию обратного вызова события драйвера EvtProgramD ma.
[in] DmaDirection
Значение типа WDF_DMA_DIRECTION.
[in] Mdl
Указатель на список дескрипторов памяти (MDL), описывающий буфер, который будет использоваться для транзакции DMA. Дополнительные сведения см. в примечаниях.
[in] Offset
Смещение байтов в цепочку MDL для текущей транзакции.
[in] Length
Количество передаваемых байтов. Это значение должно быть больше нуля.
Возвращаемое значение
WdfDmaTransactionInitializeUsingOffset возвращает STATUS_SUCCESS, если операция выполнена успешно. В противном случае метод может вернуть одно из значений, описанных в разделе возвращаемых значений WdfDmaTransactionInitialize.
Этот метод также может возвращать другие значения NTSTATUS.
Ошибка возникает, если драйвер предоставляет недопустимый дескриптор объекта.
Замечания
WdfDmaTransactionInitializeUsingOffset эквивалентен WdfDmaTransactionInitialize за исключением того, что он принимает смещение в буфер, описанный цепочкой MDL, а не виртуальным адресом.
Драйвер может указать цепочку MDL в параметре MDL Mdl этого метода. Цепочка MDL — это последовательность структур MDL, которые драйвер объединяет с помощью Next член структуры MDL.
Требования
| Требование | Ценность |
|---|---|
| целевая платформа | универсальный |
| минимальная версия KMDF | 1.11 |
| Заголовок | wdfdmatransaction.h (include Wdf.h) |
| Библиотека | Wdf01000.sys (см. управление версиями библиотеки Платформы).) |
| IRQL | <=DISPATCH_LEVEL |
| правил соответствия DDI | DriverCreate(kmdf) |