EvtExportLog-Funktion (winevt.h)
Kopiert Ereignisse aus dem angegebenen Kanal oder der angegebenen Protokolldatei und schreibt sie in die Zielprotokolldatei.
Syntax
BOOL EvtExportLog(
[in, optional] EVT_HANDLE Session,
[in] LPCWSTR Path,
[in] LPCWSTR Query,
[in] LPCWSTR TargetFilePath,
[in] DWORD Flags
);
Parameter
[in, optional] Session
Ein Remotesitzungshandle, das von der EvtOpenSession-Funktion zurückgegeben wird. Legen Sie für lokale Kanäle auf NULL fest.
[in] Path
Der Name des Kanals oder der vollständige Pfad zu einer Protokolldatei, die die zu exportierenden Ereignisse enthält. Wenn der Query-Parameter eine XPath-Abfrage enthält, müssen Sie den Kanal oder die Protokolldatei angeben. Wenn der Flags-Parameter EvtExportLogFilePath enthält, müssen Sie die Protokolldatei angeben. Wenn der Query-Parameter eine strukturierte XML-Abfrage enthält, muss der Kanal oder Pfad, den Sie hier angeben, mit dem Kanal oder Pfad in der Abfrage übereinstimmen. Wenn der Flags-Parameter EvtExportLogChannelPath enthält, kann dieser Parameter NULL sein, wenn die Abfrage eine strukturierte XML-Abfrage ist, die den Kanal angibt.
[in] Query
Eine Abfrage, die die Typen von Ereignissen angibt, die Sie exportieren möchten. Sie können eine XPath 1.0-Abfrage oder eine strukturierte XML-Abfrage angeben. Wenn Ihr XPath mehr als 20 Ausdrücke enthält, verwenden Sie eine strukturierte XML-Abfrage. Um alle Ereignisse zu exportieren, legen Sie diesen Parameter auf NULL oder "*" fest.
[in] TargetFilePath
Der vollständige Pfad zur Zielprotokolldatei, die die Ereignisse empfängt. Die Zielprotokolldatei darf nicht vorhanden sein.
[in] Flags
Flags, die angeben, ob die Ereignisse aus einem Kanal oder einer Protokolldatei stammen. Mögliche Werte finden Sie in der EVT_EXPORTLOG_FLAGS-Enumeration .
Rückgabewert
Rückgabecode/-wert | BESCHREIBUNG |
---|---|
|
Die Funktion wurde erfolgreich ausgeführt. |
|
Fehler bei der Funktion. Verwenden Sie die GetLastError-Funktion , um den Fehlercode abzurufen. |
Hinweise
Sie können Ereignisse aus mehreren Kanälen mithilfe einer strukturierten XML-Abfrage exportieren (siehe Verarbeiten von Ereignissen); Sie können diese Funktion jedoch nicht verwenden, um Ereignisse aus mehreren Protokolldateien zusammenzuführen. Wenn das Abfrageergebnis leer ist, erstellt der Dienst eine Datei, die Headerinformationen, aber keine Ereignisse enthält.
Um Ereignisse aus einem Kanal zu entfernen und in eine Zielprotokolldatei zu schreiben, rufen Sie die EvtClearLog-Funktion auf. Um lokalisierte Zeichenfolgen mit den Ereignissen in die Protokolldatei einzuschließen, rufen Sie die EvtArchiveExportedLog-Funktion auf.
Sie müssen den absoluten Pfad zur Zielprotokolldatei angeben. Sie können keine relativen Pfade und Umgebungsvariablen verwenden, um die Zielprotokolldatei anzugeben. Der Pfad kann ein UNC-Pfad (Universal Naming Convention) sein. Sie sollten .evtx als Dateinamenerweiterung verwenden.
Diese Funktion wirkt sich nur auf den angegebenen Kanal oder die angegebene Protokolldatei aus. Wenn der Kanal autoBackup oder fileMax verwendet, wirkt sich diese Funktion nicht auf diese Sicherungsdateien aus.
Beispiele
Ein Beispiel für die Verwendung dieser Funktion finden Sie unter Speichern von Ereignissen in einer Protokolldatei.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows Vista [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2008 [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | winevt.h |
Bibliothek | Wevtapi.lib |
DLL | Wevtapi.dll |