RemoveLogContainerSet-Funktion (clfsw32.h)
Entfernt mehrere Container aus einem Protokoll, das einem dedizierten oder multiplexten Protokollhandle zugeordnet ist.
Ein Client muss über Administratorrechte für das Protokollhandle verfügen, um einen Container zu entfernen. Die RemoveLogContainer-Funktion ist ein Sonderfall dieser RemoveLogContainerSet-Funktion , da sie nur einen Container entfernt. Um mehrere Container zu entfernen, verwenden Sie removeLogContainerSet.
Syntax
CLFSUSER_API BOOL RemoveLogContainerSet(
[in] HANDLE hLog,
[in] USHORT cContainer,
[in] LPWSTR *rgwszContainerPath,
[in] BOOL fForce,
[in, out, optional] LPVOID pReserved
);
Parameter
[in] hLog
Ein Handle für das Protokoll, das aus CreateLogFile abgerufen wird.
Das Protokollhandle muss über administratorrechte verfügen, um einen Protokollcontainer hinzuzufügen, und kann auf ein dediziertes oder multiplexiertes Protokoll verweisen.
[in] cContainer
Die Anzahl der Containerpfadnamen in einem Array, auf das von rgwszContainerPath verwiesen wird.
Dieser Wert muss ungleich null sein.
[in] rgwszContainerPath
Ein Array von Zeigern auf Containerpfadnamen, die cContainers-Zeiger enthalten.
Jeder Pfadname ist eine Breitzeichenzeichenfolge, die einen container identifiziert, der entweder von AddLogContainer oder AddLogContainerSet erstellt wurde.
[in] fForce
Das Löschflag, das bestimmt, wann und wie ein Container gelöscht wird.
Wenn fForceauf TRUE festgelegt ist und der Container Teil der aktiven Protokollregion ist, wird der Container nicht gelöscht, und es wird ein Fehler ERROR_LOG_CANT_DELETE zurückgegeben.
Bei FALSE wird der Container gelöscht, wenn der Container nicht mehr Teil der aktiven Protokollregion ist.
[in, out, optional] pReserved
Reserviert. Legen Sie pReserved auf NULL fest.
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
Standardmäßig ist das Löschen von Containern verzögert, was bedeutet, dass ein Container nur gelöscht wird, wenn er nicht Teil des aktiven Protokolls ist. Wenn der Container Teil des aktiven Protokolls ist, wird er zum Löschen markiert. Dieser Löschvorgang wird verzögert, bis das Protokollfragment den letzten Sektor des Containers überschreitet oder der Container einen logischen Bezeichner aufweist, der größer als der logische Bezeichner des Hauptteils des aktiven Protokolls ist. Die Protokollgröße gibt den Löschvorgang des Containers nur dann wieder, wenn der Container physisch gelöscht wird.
Ein Protokollclient kann einen erzwungenen Löschvorgang für einen Container anfordern, indem er das Löschflag auf TRUE festlegt. Dies hat die gleiche Auswirkung wie das Löschen eines Containers, der nicht Teil des aktiven Protokolls ist. Wenn jedoch ein Container Teil des aktiven Protokolls ist, schlägt der Aufruf fehl, ohne den Container zum Löschen zu markieren.
Anforderungen
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 |