Функция RemoveLogContainerSet (clfsw32.h)
Удаляет несколько контейнеров из журнала, связанного с выделенным или мультиплексным дескриптором журнала.
Чтобы удалить контейнер, клиент должен иметь права администратора на дескрипторе журнала. Функция RemoveLogContainer является особым случаем этой функции RemoveLogContainerSet , так как она удаляет только один контейнер. Чтобы удалить несколько контейнеров, используйте RemoveLogContainerSet.
Синтаксис
CLFSUSER_API BOOL RemoveLogContainerSet(
[in] HANDLE hLog,
[in] USHORT cContainer,
[in] LPWSTR *rgwszContainerPath,
[in] BOOL fForce,
[in, out, optional] LPVOID pReserved
);
Параметры
[in] hLog
Дескриптор журнала, полученного из CreateLogFile.
Дескриптор журнала должен иметь административное разрешение на добавление контейнера журнала и может ссылаться на выделенный или мультиплексный журнал.
[in] cContainer
Количество имен путей контейнера в массиве, на который указывает rgwszContainerPath.
Это значение должно быть ненулевым.
[in] rgwszContainerPath
Массив указателей на имена путей к контейнерам, которые содержат указатели cContainers .
Каждое имя пути представляет собой широкую символьную строку, которая идентифицирует контейнер, созданный командой AddLogContainer или AddLogContainerSet.
[in] fForce
Флаг удаления, определяющий, когда и как удаляется контейнер.
Если fForce имеет значение TRUE, а контейнер является частью активной области журнала, контейнер не удаляется и возвращается ошибка ERROR_LOG_CANT_DELETE .
Если значение FALSE, контейнер удаляется, если контейнер больше не является частью активного региона журнала.
[in, out, optional] pReserved
Зарезервировано. Присвойте pReserved значение NULL.
Возвращаемое значение
Если функция выполняется успешно, возвращается ненулевое значение.
Если функция выполняется неудачно, возвращается нулевое значение. Дополнительные сведения об ошибке можно получить, вызвав GetLastError.
В следующем списке указаны возможные коды ошибок:
Комментарии
По умолчанию удаление контейнера выполняется отложенно, то есть контейнер удаляется только в том случае, если он не является частью активного журнала. Если контейнер является частью активного журнала, он помечается для удаления. Это удаление откладывается до тех пор, пока задняя часть журнала не превысит последний сектор контейнера или контейнер не будет содержать логический идентификатор, превышающий логический идентификатор заголовка активного журнала. Размер журнала отражает удаление контейнера только при физическом удалении контейнера.
Клиент журнала может запросить принудительное удаление контейнера, установив для флага удаления значение TRUE. Это имеет тот же эффект, что и удаление контейнера, который не является частью активного журнала. Однако если контейнер является частью активного журнала, вызов завершается ошибкой, не помечая контейнер для удаления.
Требования
Минимальная версия клиента | Windows Vista [только классические приложения] |
Минимальная версия сервера | Windows Server 2003 R2 [только классические приложения] |
Целевая платформа | Windows |
Header | clfsw32.h |
Библиотека | Clfsw32.lib |
DLL | Clfsw32.dll |