Freigeben über


CreateLogContainerScanContext-Funktion (clfsw32.h)

Erstellt einen Scankontext, der mit ScanLogContainers verwendet werden soll, um alle Protokollcontainer aufzulisten, die einem Protokoll zugeordnet sind, und führt die erste Überprüfung durch.

Syntax

CLFSUSER_API BOOL CreateLogContainerScanContext(
  [in]                HANDLE             hLog,
  [in]                ULONG              cFromContainer,
  [in]                ULONG              cContainers,
  [in]                CLFS_SCAN_MODE     eScanMode,
  [in, out]           PCLFS_SCAN_CONTEXT pcxScan,
  [in, out, optional] LPOVERLAPPED       pOverlapped
);

Parameter

[in] hLog

Ein Handle für das Protokoll, das aus CreateLogFile mit Berechtigungen zum Überprüfen der Protokollcontainer abgerufen wird.

Die Datei kann ein dediziertes oder multiplexiertes Protokoll sein.

[in] cFromContainer

Der Container, in dem die Überprüfung gestartet werden soll.

Dieser Parameter ist eine Ordnungszahl relativ zur Anzahl der Container im Protokoll.

[in] cContainers

Die Anzahl der zuzuordnenden CLFS_CONTAINER_INFORMATION Strukturen für CreateLogContainerScanContext .

Diese Zahl ist die Anzahl der Container, die bei jedem Scanaufruf überprüft werden, sodass der Aufrufer weiß, dass die Überprüfung abgeschlossen ist, wenn die Anzahl der zurückgegebenen Container kleiner als dieser Wert ist.

Beim Beenden wird ein Zeiger auf das systemseitig zugeordnete Array von CLFS_CONTAINER_INFORMATION Strukturen im pinfoContainer-Member der vom Client zugewiesenen CLFS_SCAN_CONTEXT-Struktur platziert. Auf diesen Member zeigt der pcxScan-Parameter (d. h. "pcxScan-pinfoContainer>[]"), und die tatsächliche Anzahl der Strukturen im Array wird in "pcxScan-cContainersReturned>" platziert.

Der Client muss ScanLogContainers aufrufen, wobei der eScanMode-Parameter auf CLFS_SCAN_CLOSE festgelegt ist, damit dieses Array freigegeben werden kann. Andernfalls treten Speicherverluste auf.

[in] eScanMode

Der Modus zum Überprüfen von Containern.

Container können in einem der folgenden Modi gescannt werden.

Wert Bedeutung
CLFS_SCAN_INIT
Initialisiert oder initialisiert eine Überprüfung aus dem ersten Container in der Containerliste.

Dieser Modus initialisiert den Containerkontext und gibt den ersten Satz von Containerdeskriptoren zurück, den cContainers angibt.

CLFS_SCAN_FORWARD
Gibt den ersten Satz von Containern zurück, den cContainers angibt.
CLFS_SCAN_BACKWARD
Gibt die letzte Gruppe von Containern zurück, die cContainers angibt.

[in, out] pcxScan

Ein Zeiger auf eine vom Client zugewiesene CLFS_SCAN_CONTEXT Struktur, die einen Scankontext empfängt, der an die ScanLogContainers-Funktion übergeben werden kann, wenn ein Client die Protokollcontainer eines dedizierten Protokolls überprüft.

[in, out, optional] pOverlapped

Ein Zeiger auf eine OVERLAPPED-Struktur , die für asynchrone Vorgänge erforderlich ist.

Dieser Parameter kann NULL sein, wenn kein asynchroner Vorgang verwendet wird.

Rückgabewert

Wenn die Funktion erfolgreich ist, ist der Rückgabewert ungleich Null.

Wenn die Funktion fehlerhaft ist, ist der Rückgabewert null. Um erweiterte Fehlerinformationen zu erhalten, rufen Sie GetLastError auf.

Die folgende Liste identifiziert die möglichen Fehlercodes:

Hinweise

Nach Abschluss einer Überprüfung muss der Client ScanLogContainers erneut aufrufen, wobei der eScanMode-Parameter auf CLFS_SCAN_CLOSE festgelegt ist, damit das systemseitig zugewiesene Array von CLFS_CONTAINER_INFORMATION Strukturen freigegeben werden kann. Andernfalls treten Speicherverluste auf.

Beispiele

Ein Beispiel, das diese Funktion verwendet, finden Sie unter Aufzählen von Protokollcontainern.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows Vista [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2003 R2 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile clfsw32.h
Bibliothek Clfsw32.lib
DLL Clfsw32.dll

Weitere Informationen

CLFS_CONTAINER_INFORMATION

CLFS_SCAN_CONTEXT

CLFS_SCAN_MODE

Allgemeine Protokolldateifunktionen

ScanLogContainers