Fungsi ClfsAddLogContainerSet (wdm.h)

Rutinitas ClfsAddLogContainerSet secara atomik menambahkan sekumpulan kontainer ke log CLFS.

Sintaks

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, penelepon memasok bilangan bulat positif yang merupakan ukuran yang diminta, dalam byte, dari masing-masing kontainer. 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 yang berukuran 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 memasok bilangan bulat positif yang merupakan ukuran yang diminta, dalam byte, dari masing-masing kontainer. Ukuran yang diminta dibulatkan ke kelipatan 512KB (untuk log khusus) atau 1MB (untuk log bersama). Jika ukuran yang dibulatkan setidaknya sebesar ukuran kontainer yang ada, CLFS membuat kontainer baru yang berukuran sama dengan kontainer yang ada. Saat berhasil dikembalikan, 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%\").

Nilai kembali

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

Keterangan

Kontainer adalah jangkauan yang berdampingan 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 Sistem File Log Umum.

Persyaratan

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

Lihat juga

ClfsAddLogContainer

ClfsRemoveLogContainerSet