NdisMCreateLog-Funktion (ndis.h)

NdisMCreateLog ordnet eine Protokolldatei zu und öffnet sie, in der ein Miniporttreiber Daten schreiben kann, die von einer treiberdedizierten Win32-Anwendung angezeigt werden sollen.

Syntax

NDIS_STATUS NdisMCreateLog(
  [in]  NDIS_HANDLE  MiniportAdapterHandle,
  [in]  UINT         Size,
  [out] PNDIS_HANDLE LogHandle
);

Parameter

[in] MiniportAdapterHandle

Gibt die Handleeingabe für MiniportInitializeEx an.

[in] Size

Gibt an, wie viele Bytes für die Protokolldatei zugeordnet werden sollen. NDIS erstellt eine temporäre Datei, die nicht auf dem Datenträger gespeichert ist.

[out] LogHandle

Zeiger auf eine vom Aufrufer bereitgestellte Variable, in der diese Funktion ein Handle an die Protokolldatei zurückgibt. Dieses Handle ist ein erforderlicher Parameter für die NdisXxxLog-Funktionen , die der Miniporttreiber anschließend aufruft.

Rückgabewert

NdisMCreateLog kann eine der folgenden Aktionen zurückgeben:

Rückgabecode Beschreibung
NDIS_STATUS_SUCCESS
Der Miniporttreiber kann das bei LogHandle zurückgegebene Handle verwenden, um Daten in die mit NDIS zugeordnete Protokolldatei zu schreiben.
NDIS_STATUS_RESOURCES
Eine Protokolldatei der angegebenen Größe konnte nicht zugeordnet werden.
NDIS_STATUS_FAILURE
Der Treiber hat bereits NdisMCreateLog erfolgreich aufgerufen.

Hinweise

Ein Miniporttreiber kann den NdisM aufrufen. Protokollfunktionen , um alle Vom Treiberwriter ausgewählten Informationen bereitzustellen. Unabhängig davon, welche Miniporttreiberprotokolle von einer treiberdedienten Win32-Anwendung angezeigt werden können. Eine solche Anwendung ruft die Win32-Funktion DeviceIoControl mit IOCTL_NDIS_GET_LOG_DATA regelmäßig auf, um das abzurufen, was der Miniporttreiber in die Protokolldatei geschrieben hat. Beispielsweise kann ein Unterentwicklungs-Miniporttreiber Testdaten schreiben, die von der entsprechenden Anwendung angezeigt werden.

Wenn NdisMCreateLog NDIS_STATUS_RESOURCES zurückgibt, kann der Treiber die ursprüngliche Größe nach unten anpassen und versuchen, diese Funktion erneut aufzurufen. Ein Miniporttreiber kann jedoch nicht NdisMCreateLog aufrufen, um mehr als eine Protokolldatei zu erstellen, nachdem ein Aufruf erfolgreich war.

Unabhängig davon, wie groß die Protokolldatei zugeordnet ist, speichern nachfolgende Aufrufe von NdisMWriteLogData Daten in dieser Datei, die als kreisförmiger Puffer behandelt wird. Das heißt, eine Sequenz von Aufrufen von NdisMWriteLogData überschreibt schließlich die Daten, die ursprünglich in die Protokolldatei geschrieben wurden.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Unterstützt für NDIS 6.0- und NDIS 5.1-Treiber (siehe NdisMCreateLog (NDIS 5.1)) in Windows Vista. Unterstützt für NDIS 5.1-Treiber (siehe NdisMCreateLog (NDIS 5.1)) in Windows XP.
Zielplattform Universell
Header ndis.h (include Ndis.h)
Bibliothek Ndis.lib
IRQL PASSIVE_LEVEL
DDI-Complianceregeln Irql_Miniport_Driver_Function(ndis)

Weitere Informationen

MiniportInitializeEx

NdisMCloseLog

NdisMFlushLog

NdisMWriteLogData