Freigeben über


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
TRUE
Die Funktion wurde erfolgreich ausgeführt.
FALSE
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

Weitere Informationen

EvtArchiveExportedLog

EvtClearLog