NdisWriteEventLogEntry-Funktion (ndis.h)
NdisWriteEventLogEntry protokolliert ein Ereignis im Win32-Ereignisprotokoll.
Syntax
NDIS_STATUS NdisWriteEventLogEntry(
[in] PVOID LogHandle,
[in] NDIS_STATUS EventCode,
[in] ULONG UniqueEventValue,
[in] USHORT NumStrings,
[in, optional] PVOID StringsList,
[in] ULONG DataSize,
[in, optional] PVOID Data
);
Parameter
[in] LogHandle
Zeiger auf das Treiberobjekt des Protokolls, das dieses Ereignis protokolliert.
[in] EventCode
Gibt den NDIS_STATUS_XXX-Code an, der das Ereignis beschreibt.
[in] UniqueEventValue
Identifiziert diesen instance der Fehlermeldung.
[in] NumStrings
Gibt die Anzahl der Zeiger auf Unicode-Zeichenfolgen in der optionalen StringsList an. Wenn StringsListNULL ist, muss NumStrings null sein.
[in, optional] StringsList
Entweder NULL oder verweist auf gepufferte Unicode-Zeichenfolgen. Diese Zeichenfolgen, die das Ereignis beschreiben, werden in das Win32-Ereignisprotokoll eingefügt und können mit der Win32-Ereignisanzeige untersucht werden. Jede Zeichenfolge muss eine NUL-endende Unicode-Zeichenfolge sein.
[in] DataSize
Gibt die Anzahl der Bytes im Puffer für die Binärdaten unter Data an. Wenn Datanull ist, muss DataSize null sein.
[in, optional] Data
Entweder NULL oder verweist auf gepufferte binäre Speicherabbilddaten, die für das Verständnis des Ereignisses nützlich sind. Diese Daten können mit der Win32-Ereignisanzeige untersucht werden.
Rückgabewert
NdisWriteEventLogEntry kann einen der folgenden Werte zurückgeben:
Rückgabecode | Beschreibung |
---|---|
|
Das Ereignis wurde erfolgreich protokolliert. |
|
Die optional bereitgestellten Unicode-Zeichenfolgen und binären Dumpdaten überschreiten die maximal zulässige Größe (MAX_EVENT_LOG_DATA_SIZE). |
|
NDIS konnte keinen Arbeitsspeicher für den E/A-Fehlerprotokolldatensatz zuweisen. |
Hinweise
NdisWriteEventLogEntry ordnet einen E/A-Fehlerprotokolldatensatz zu, füllt den Datensatz mit den angegebenen Informationen zum Ereignis aus und schreibt den Datensatz dann in die E/A-Fehlerprotokolldatei. Ein Benutzer kann das protokollierte Ereignis anzeigen, einschließlich einer optionalen Beschreibung der Ereignis- und/oder optionalen Binärabbilddaten, mit der Win32-Ereignisanzeige.
Der NT-Fehlerprotokollierungsthread verwendet alle in der optionalen StringsList angegebenen Zeichenfolgen , um nachrichten auszufüllen, die in das Win32-Ereignisprotokoll geschrieben wurden. Jede Zeichenfolge muss eine NUL-endende Unicode-Zeichenfolge sein. Der E/A-Manager geht davon aus, dass die anfängliche Zeichenfolge entweder der Name des Treibers ist, der den Fehler meldet, oder der Name des Geräts, das den Fehler verursacht hat.
Die vom Aufrufer bereitgestellten Unicode-Zeichenfolgen sollten aus der Registrierung gelesen werden oder sprachunabhängig sein (d. a. die Zeichenfolgen sollten in jeder Sprache identisch sein, z. B. könnte die Zeichenfolge ein Dateiname sein).
Vom Aufrufer bereitgestellte Dumpdaten können beliebige Binärdaten (z. B. Registerwerte) sein, die für das Verständnis des Ereignisses nützlich sind. Der Aufrufer muss die Binärdaten nicht auffüllen. Bei Bedarf füllt NdisWriteEventLogEntry die binären Speicherabbilddaten auf, sodass die endgültige Datengröße ein Mehrfachintegral von sizeof(ULONG) ist.
Das System begrenzt die Gesamtgröße der optionalen Daten, die für NdisWriteEventLogEntry bereitgestellt werden. Die kombinierte Größe der Zeichenfolgenliste und des (möglicherweise aufgefüllten) binären Speicherabbilds muss kleiner oder gleich MAX_EVENT_LOG_DATA_SIZE sein.
NdisWriteEventLogEntry wird nur von Protokolltreibern aufgerufen. Miniport-Treiber sollten NdisWriteErrorLogEntry aufrufen, um Ereignisse und Fehler zu protokollieren.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Unterstützt für NDIS 6.0- und NDIS 5.1-Treiber (siehe NdisWriteEventLogEntry (NDIS 5.1)) in Windows Vista. Unterstützt für NDIS 5.1-Treiber (siehe NdisWriteEventLogEntry (NDIS 5.1)) in Windows XP. |
Zielplattform | Universell |
Header | ndis.h (include Ndis.h) |
Bibliothek | Ndis.lib |
IRQL | <= DISPATCH_LEVEL |
DDI-Complianceregeln | Irql_Miscellaneous_Function(ndis) |