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.
Die KsWriteFile--Funktion führt einen Schreibzugriff für das angegebene Dateiobjekt aus. Es wird davon ausgegangen, dass der Aufrufer den Zugriff auf die Datei für Vorgänge für ein FO_SYNCHRONOUS_IO Dateiobjekt serialisiert. Die Funktion versucht, FastIoDispatch- nach Möglichkeit zu verwenden, oder es generiert eine Schreibanforderung für das Geräteobjekt. Alle relevanten Statistiken werden aktualisiert.
Syntax
KSDDKAPI NTSTATUS KsWriteFile(
[in] PFILE_OBJECT FileObject,
[in, optional] PKEVENT Event,
[in, optional] PVOID PortContext,
[out] PIO_STATUS_BLOCK IoStatusBlock,
[in] PVOID Buffer,
[in] ULONG Length,
[in, optional] ULONG Key,
[in] KPROCESSOR_MODE RequestorMode
);
Parameter
[in] FileObject
Gibt das Dateiobjekt an, für das der Lesevorgang ausgeführt werden soll.
[in, optional] Event
Enthält optional das Ereignis, das im Schreibvorgang verwendet werden soll. Wenn kein Ereignis übergeben wird, wird davon ausgegangen, dass sich der Aufruf für ein synchrones Dateiobjekt befindet oder der Aufrufer auf das Ereignis des Dateiobjekts wartet. Wenn sich der Aufruf nicht auf einem synchronen Dateiobjekt befindet, kann er asynchron abgeschlossen werden. Wenn die Datei für synchrone E/A geöffnet wurde, muss diese Variable NULL-sein. Wenn diese Variable verwendet wird, muss es sich um ein Ereignis handeln, das vom Objekt-Manager zugewiesen wird.
[in, optional] PortContext
Enthält optional Kontextinformationen für einen Abschlussport.
[out] IoStatusBlock
Gibt den Speicherort an, an dem die Statusinformationen zurückgegeben werden sollen. Dies wird immer als gültige Adresse angenommen, unabhängig vom Anforderermodus.
[in] Buffer
Gibt den Puffer an, aus dem die Daten geschrieben werden sollen. Wenn der Puffer probed und gesperrt werden muss, wird ein Ausnahmehandler zusammen mit RequesterMode-verwendet.
[in] Length
Gibt die Größe des übergebenen Puffers an.
[in, optional] Key
Enthält optional einen Schlüssel oder null, wenn keines vorhanden ist.
[in] RequestorMode
Gibt den Prozessormodus an, der im Lese-IRP platziert werden soll, wenn eine generiert werden muss. Darüber hinaus wird es verwendet, wenn ein Puffer auf probed und gesperrt werden muss. Diese Variable bestimmt auch, ob ein schneller E/A-Aufruf ausgeführt werden kann. Wenn der Anforderermodus nicht KernelMode ist, aber der vorherige Modus war, kann schnelle E/A nicht verwendet werden.
Rückgabewert
Die KsWriteFile--Funktion gibt STATUS_SUCCESS bei erfolgreicher Ausführung zurück, STATUS_PENDING, wenn die Aktion aussteht, oder wenn die Aktion fehlschlägt, oder wird ein Lesefehler zurückgegeben, wenn dies nicht erfolgreich ist.
Anforderungen
| Anforderung | Wert |
|---|---|
| Zielplattform- | Universal |
| Header- | ks.h (enthalten Ks.h) |
| Library | Ks.lib |