IWDFIoRequest::GetOutputMemory-Methode (wudfddi.h)
[Warnung: UMDF 2 ist die neueste Version von UMDF und ersetzt UMDF 1. Alle neuen UMDF-Treiber sollten mit UMDF 2 geschrieben werden. UMDF 1 werden keine neuen Features hinzugefügt, und die Unterstützung für UMDF 1 in neueren Versionen von Windows 10 ist eingeschränkt. Universelle Windows-Treiber müssen UMDF 2 verwenden. Weitere Informationen finden Sie unter Erste Schritte mit UMDF.]
Die GetOutputMemory-Methode ruft das Speicherobjekt ab, das den Ausgabepuffer für eine E/A-Anforderung darstellt.
Syntax
void GetOutputMemory(
[out] IWDFMemory **ppWdfMemory
);
Parameter
[out] ppWdfMemory
Ein Zeiger auf eine Variable, die einen Zeiger auf die IWDFMemory-Schnittstelle mit Verweisanzahl für das Speicherobjekt empfängt. Beachten Sie, dass die Rückgabe von NULL gültig ist. in diesem Fall ist der E/A-Anforderung kein Ausgabespeicher zugeordnet.
Rückgabewert
Keine
Bemerkungen
Treiber, die die gepufferte E/A-Zugriffsmethode verwenden, können GetOutputMemory aufrufen, um den Ausgabepuffer einer E/A-Anforderung abzurufen.
Bevor ein Treiber eine E/A-Anforderung abschließt, muss der Treiber die IWDFMemory::Release-Methode für das Speicherobjekt aufrufen. Das zugrunde liegende Speicherobjekt wird freigegeben, wenn die Anforderung abgeschlossen ist.
Der Ausgabepuffer, der der E/A-Anforderung zugeordnet ist, enthält Informationen (z. B. Daten von einem Datenträger), die der Treiber dem Absender der Anforderung zur Verfügung stellt. Der Treiber kann GetOutputMemory aufrufen, um den Ausgabepuffer für eine Leseanforderung oder eine Geräte-E/A-Steuerungsanforderung abzurufen, aber nicht für eine Schreibanforderung (da Schreibanforderungen keine Ausgabedaten bereitstellen). Für den Zugriff auf den Ausgabepuffer muss der Treiber die IWDFMemory::GetDataBuffer-Methode aufrufen.
UMDF erstellt die Speicherobjekte einer E/A-Anforderung, wenn die E/A-Anforderung empfangen wird, bevor die E/A-Anforderung der E/A-Warteschlange eines Treibers hinzugefügt wird. Wenn UMDF keinen Arbeitsspeicher für die Speicherobjekte zuweisen kann, schließt es die E/A-Anforderung mit einer Fehlerrückgabe status ab und übermittelt die E/A-Anforderung nicht an den Treiber.
Weitere Informationen zum Zugreifen auf die Datenpuffer einer E/A-Anforderung finden Sie unter Zugreifen auf Datenpuffer in UMDF-Based Treibern.
Beispiele
Ein Codebeispiel für die Verwendung der GetOutputMemory-Methode finden Sie unter IWDFIoQueue::RetrieveNextRequest.
Anforderungen
Anforderung | Wert |
---|---|
Ende des Supports | In UMDF 2.0 und höher nicht verfügbar. |
Zielplattform | Desktop |
UMDF-Mindestversion | 1.5 |
Kopfzeile | wudfddi.h (include Wudfddi.h) |
DLL | WUDFx.dll |