Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
[Gilt für KMDF und UMDF]
Die WdfMemoryGetBuffer--Methode gibt einen Zeiger auf den Puffer zurück, der einem angegebenen Speicherobjekt zugeordnet ist.
Syntax
PVOID WdfMemoryGetBuffer(
[in] WDFMEMORY Memory,
[out, optional] size_t *BufferSize
);
Die Parameter
[in] Memory
Ein Handle für ein Framework-Speicherobjekt.
[out, optional] BufferSize
Ein Zeiger auf eine Position, die die Größe des Speicherpuffers in Bytes empfängt. Dieser Parameter ist optional und kann NULL-werden.
Rückgabewert
WdfMemoryGetBuffer- gibt einen Zeiger auf den Speicherpuffer zurück.
Wenn der Treiber ein ungültiges Objekthandle bereitstellt, tritt eine Fehlerüberprüfung auf.
Bemerkungen
Weitere Informationen zu Framework-Speicherobjekten finden Sie unter Verwenden von Speicherpuffern.
WdfMemoryGetBuffer- kann bei jedem IRQL aufgerufen werden.
Beispiele
Das folgende Codebeispiel basiert auf der EvtUsbTargetPipeReadComplete Rückruffunktion im kmdf_fx2 Beispieltreiber. Das Beispiel ruft den Puffer ab, der dem Speicherobjekt zugeordnet ist, das die Rückruffunktion empfängt. Im Beispiel werden Daten aus dem Puffer in den Kontextbereich des Geräteobjekts kopiert, den der Treiber definiert hat.
VOID
OsrFxEvtUsbInterruptPipeReadComplete(
WDFUSBPIPE Pipe,
WDFMEMORY Buffer,
size_t NumBytesTransferred,
WDFCONTEXT Context
)
{
PUCHAR switchState = NULL;
WDFDEVICE device;
PDEVICE_CONTEXT pDeviceContext = Context;
device = WdfObjectContextGetObject(pDeviceContext);
switchState = WdfMemoryGetBuffer(Buffer, NULL);
pDeviceContext->CurrentSwitchState = *switchState;
}
Anforderungen
| Anforderung | Wert |
|---|---|
| Zielplattform | universell |
| Minimale KMDF-Version | 1.0 |
| Mindest-UMDF-Version | 2.0 |
| Kopfzeile | wdfmemory.h (include Wdf.h) |
| Bibliothek | Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF) |
| IRQL | Beliebige Ebene |
| DDI-Complianceregeln | DriverCreate(kmdf), MemAfterReqCompletedIntIoctlA(kmdf), MemAfterReqCompletedIoctlA(kmdf), MemAfterReqCompletedReadA(kmdf), MemAfterReqCompletedWriteA(kmdf) |