Fungsi ClfsAddLogContainerSet (wdm.h)

ClfsAddLogContainerSet rutin secara atom menambahkan sekumpulan kontainer ke log CLFS.

Sintaksis

C++
CLFSUSER_API NTSTATUS ClfsAddLogContainerSet(
  [in]           PLOG_FILE_OBJECT plfoLog,
  [in]           USHORT           cContainers,
  [in, optional] PULONGLONG       pcbContainer,
  [in]           PUNICODE_STRING  rguszContainerPath
);

Parameter

[in] plfoLog

Penunjuk ke struktur LOG_FILE_OBJECT yang mewakili log tempat kontainer akan ditambahkan. Pemanggil sebelumnya mendapatkan pointer ini dengan memanggil ClfsCreateLogFile.

[in] cContainers

Jumlah kontainer dalam set. Ini adalah jumlah elemen dalam array rguszContainerPath.

[in, optional] pcbContainer

Penunjuk ke variabel berjenis ULONGLONG. Peran parameter ini tergantung pada apakah log saat ini memiliki setidaknya satu kontainer.

  • Jika log saat ini tidak memiliki kontainer, pemanggil menyediakan bilangan bulat positif yang merupakan ukuran yang diminta, dalam byte, dari kontainer individual. CLFS membuat kontainer yang merupakan ukuran yang diminta dibulatkan ke kelipatan 512KB (untuk log khusus) atau 1MB (untuk log multipleks).
  • Jika log saat ini memiliki setidaknya satu kontainer dan parameter ini adalah penunjuk NULL, CLFS membuat kontainer baru dengan ukuran yang sama dengan kontainer yang ada. (Semua kontainer dalam log harus berukuran sama.)
  • Jika log saat ini memiliki setidaknya satu kontainer dan parameter ini adalah penunjuk yang valid, pemanggil menyediakan bilangan bulat positif yang merupakan ukuran yang diminta, dalam byte, dari kontainer individual. Ukuran yang diminta dibulatkan ke kelipatan 512KB (untuk log khusus) atau 1MB (untuk log bersama). Jika ukuran dibulatkan setidaknya sebesar ukuran kontainer yang ada, CLFS membuat kontainer baru dengan ukuran yang sama dengan kontainer yang ada. Pada pengembalian yang berhasil, parameter ini menerima ukuran kontainer yang ada. Jika ukuran yang dibulatkan kurang dari ukuran kontainer yang ada, ClfsAddLogContainerSet gagal.

[in] rguszContainerPath

Penunjuk ke array struktur UNICODE_STRING. Setiap string menyediakan nama jalur untuk salah satu kontainer baru. Jumlah elemen dalam array diberikan oleh cContainers. Jalur tertentu dapat absolut atau relatif terhadap lokasi file log dasar. Jalur yang relatif terhadap file log dasar harus dimulai dengan CLFS_CONTAINER_RELATIVE_PREFIX, yang merupakan string literal (L"%BLF%\").

Mengembalikan nilai

ClfsAddLogContainer mengembalikan STATUS_SUCCESS jika berhasil; jika tidak, ia mengembalikan salah satu kode kesalahan yang ditentukan dalam Ntstatus.h.

Komentar

Kontainer adalah tingkat yang bersebelahan pada penyimpanan yang stabil. Misalnya, kontainer bisa menjadi file yang berdampingan pada disk. Log adalah sekumpulan kontainer bersama dengan file log dasar. Untuk informasi selengkapnya tentang kontainer, lihat Penyimpanan Stabil CLFS .

Kontainer yang ditentukan oleh jalur yang relatif terhadap file log dasar harus berada di direktori yang sama dengan file log dasar atau subdirektori file log dasar. Direktori "." dan ".." tidak diizinkan di jalur relatif.

Log dapat memiliki beberapa kontainer dengan jalur absolut dan kontainer lain dengan jalur relatif.

Kontainer dibuat dalam mode tidak terkompresi dan diinisialisasi dengan nol.

Log harus memiliki setidaknya dua kontainer sebelum I/O dapat dilakukan di dalamnya.

Untuk penjelasan tentang konsep dan terminologi CLFS, lihat Common Log File System.

Persyaratan

Syarat Nilai
klien minimum yang didukung Tersedia di Windows Server 2003 R2, Windows Vista, dan versi Windows yang lebih baru.
Platform Target Desktop
Header wdm.h (termasuk Wdm.h)
Pustaka Clfs.lib
DLL Clfs.sys
IRQL <= APC_LEVEL

Lihat juga

ClfsAddLogContainer

ClfsRemoveLogContainerSet