ClfsMgmtSetLogFileSize-Funktion (wdm.h)
Die ClfsMgmtSetLogFileSize Routine fügt Container zu einem Protokoll hinzu oder löscht Container aus einem Protokoll.
Syntax
CLFSUSER_API NTSTATUS ClfsMgmtSetLogFileSize(
[in] PLOG_FILE_OBJECT LogFile,
[in] PULONGLONG NewSizeInContainers,
[out] PULONGLONG ResultingSizeInContainers,
[in, optional] PCLFS_SET_LOG_SIZE_COMPLETE_CALLBACK CompletionRoutine,
[in, optional] PVOID CompletionRoutineData
);
Parameter
[in] LogFile
Ein Zeiger auf eine LOG_FILE_OBJECT-Struktur, die das CLFS-Protokoll oder einen Datenstrom im Protokoll darstellt, zu der Container hinzugefügt oder gelöscht werden.
[in] NewSizeInContainers
Ein Zeiger auf die angeforderte Protokollgröße. Der Aufrufer legt diesen Parameter auf einen der folgenden Werte fest.
Wert | Bedeutung |
---|---|
0 |
Erzwingen Sie die Mindestgrößenrichtlinie. Weitere Informationen zu dieser Richtlinie finden Sie unter ClfsMgmtInstallPolicy.
Wenn keine Mindestgrößenrichtlinie installiert ist, tritt eine der folgenden Aktionen auf:
|
1 | Ungültiger Wert. Der Aufruf schlägt fehl und gibt STATUS_INVALID_VALUE zurück. |
2 bis 1023 |
Die gewünschte Größe des Protokolls, ausgedrückt als Die Anzahl der Container.
Wenn diese Zahl kleiner als die Mindestanzahl der durch die installierte Richtlinie angegebenen Container ist, schlägt der Aufruf mit ERROR_COULD_NOT_RESIZE_LOG fehl. Wenn diese Zahl größer als die maximale Anzahl von Containern ist, die durch die installierte Richtlinie angegeben wurden, wird das Protokoll nur so weit erweitert, bis die vom Richtlinien angegebene maximale Anzahl von Containern und der Aufruf ohne Fehler erfolgreich ist. |
1024 bis MAXULONGLONG |
Wenn keine Richtlinie für maximale Größe installiert ist, schlägt der Aufruf fehl und gibt ERROR_LOG_POLICY_CONFLICT zurück.
Wenn eine Richtlinie für maximale Größe installiert ist, wird das Protokoll auf die maximale Anzahl von Containern erweitert, die durch die Richtlinie für maximale Größe angegeben wurden, und der Aufruf ist ohne Fehler erfolgreich. |
Um die tatsächliche Protokollgröße zu ermitteln, die sich möglicherweise von der angeforderten Größe unterscheidet, verwenden Sie den parameter ResultSizeInContainers.
[out] ResultingSizeInContainers
Ein Zeiger auf die resultierende Protokollgröße. Bei erfolgreicher Ausführung schreibt die Routine die tatsächliche Größe des Protokolls, ausgedrückt als die Anzahl der Container im Protokoll, in den Speicherort, auf den dieser Parameter verweist.
[in, optional] CompletionRoutine
Wird nicht verwendet. Auf NULL festgelegt.
[in, optional] CompletionRoutineData
Wird nicht verwendet. Auf NULL festgelegt.
Rückgabewert
Die ClfsMgmtSetLogFileSize Routine gibt einen der folgenden NTSTATUS-Werte zurück:
Rückgabecode | Beschreibung |
---|---|
|
Die Größe der Protokolldatei wurde festgelegt. Der parameter ResultSizeInContainers enthält die aktuelle Größe des Protokolls. |
|
Die CLFS-Verwaltung konnte die Protokolldateigröße nicht festlegen. |
|
Der Wert des LogFile--Parameters ist NULL-, oder der Inhalt des NewSizeInContainers Parameter ist 1. |
|
Der Wert des NewSizeInContainers--Parameters ist NULL-. |
|
Es besteht ein Konflikt zwischen den Richtlinien für die maximale Größe und der Mindestgröße für das Protokoll. |
|
Die CLFS-Verwaltung konnte nicht genügend Container löschen, um NewSizeInContainerszu erreichen. |
|
Die CLFS-Verwaltung konnte dem Protokoll nicht genügend Container hinzufügen, um NewSizeInContainerszu erreichen. Dies kann auf einen Konflikt mit einer Richtlinie zurückzuführen sein, die der Client festgelegt hat. |
Diese Routine kann auch andere NTSTATUS-Wertezurückgeben.
Bemerkungen
Die ClfsMgmtSetLogFileSize Routine wird normalerweise nur verwendet, wenn ein Client gestartet oder beendet wird. Rufen Sie die ClfsMgmtSetLogFileSize Routine nicht in Ihrer ClfsAdvanceTailCallback- funktion auf.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Verfügbar ab Windows Server 2003 R2 und Windows Vista. |
Zielplattform- | Desktop |
Header- | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |
Library | Clfs.lib |
DLL- | Clfs.sys |
IRQL- | <= APC_LEVEL |