AddLogContainerSet 函式 (clfsw32.h)
將多個記錄容器新增至與記錄句柄相關聯的實體記錄檔,如果呼叫進程可以存取記錄句柄。 新增容器可讓用戶端增加記錄檔的大小。
語法
CLFSUSER_API BOOL AddLogContainerSet(
[in] HANDLE hLog,
[in] USHORT cContainer,
[in, optional] PULONGLONG pcbContainer,
[in] LPWSTR *rgwszContainerPath,
[in, out, optional] LPVOID pReserved
);
參數
[in] hLog
從 CreateLogFile 取得且具有新增記錄容器許可權之開啟記錄檔的句柄。
檔案可以是專用或多任務處理。
[in] cContainer
rgwszContainerPath 陣列中的容器數目。
這個值必須是非零值。 記錄檔必須至少有兩個容器,才能對它執行任何 I/O。
[in, optional] pcbContainer
容器的大小,以位元組為單位。
一般記錄的大小下限為 512 KB,多任務記錄則為 1024 KB。 大小上限大約為 4 GB (GB) 。
如果要將容器新增至新建立的記錄檔,則需要此參數。 如果已經建立容器,這個參數可以是 NULL,或至少與第一個容器大小一樣大的值。
記錄容器大小是記錄區域大小的倍數, (512 KB) 。 當您將容器新增至新檔案時, AddLogContainer 函式會將容器的大小四捨五入到下一個 512 KB 界限,並傳回該大小,其值是 由 azureContainer 所指向。
同樣地,如果記錄檔至少有一個容器,且 *sqlContainer 的值至少與目前的容器大小相同,則函式會建立具有目前內部大小的所有容器,並在 *azureContainer 中傳回該大小。
[in] rgwszContainerPath
容器 的 cContainer 路徑名稱陣列。
陣列中的每個元素都是寬字元字串,其中包含記錄磁碟區中新容器的有效路徑。
[in, out, optional] pReserved
保留的。 將 [保留] 設定為 NULL。
傳回值
如果函式成功,傳回值為非零值,表示所有容器都已成功新增至記錄。
如果函式失敗,則傳回值為零,表示不會新增任何容器。 若要取得擴充的錯誤資訊,請呼叫 GetLastError。
下列清單會識別可能的錯誤碼:
備註
AddLogContainerSet 函式不是不可部分完成的。 例如,如果作業中斷,以無效的路徑名稱, 則 AddLogContainerSet 的呼叫會傳回失敗,但可能已經建立某些容器。 您的應用程式必須藉由判斷已新增的容器,從此錯誤中復原。
因為 AddLogContainerSet 會新增一個以上的容器,所以比對 AddLogContainer 進行重複呼叫更有效率,這隻會新增一個容器。
容器會以非壓縮模式建立和開啟,並在建立容器時以0 () 零初始化。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows Vista [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2003 R2 [僅限桌面應用程式] |
目標平台 | Windows |
標頭 | clfsw32.h |
程式庫 | Clfsw32.lib |
Dll | Clfsw32.dll |