Bagikan melalui


FSCTL_SET_OBJECT_ID_EXTENDED IOCTL (winioctl.h)

Memodifikasi data pengguna yang terkait dengan pengidentifikasi objek untuk file atau direktori yang ditentukan.

Untuk melakukan operasi ini, panggil fungsi DeviceIoControl dengan parameter berikut.

BOOL DeviceIoControl(
  (HANDLE) hDevice,                 // handle to device
  FSCTL_SET_OBJECT_ID_EXTENDED,     // dwIoControlCode
  (LPVOID) lpInBuffer,              // input buffer
  (DWORD) nInBufferSize,            // size of input buffer
  NULL,                             // lpOutBuffer
  0,                                // nOutBufferSize
  (LPDWORD) lpBytesReturned,        // number of bytes returned
  (LPOVERLAPPED) lpOverlapped       // OVERLAPPED structure
);

Keterangan

Pengidentifikasi objek digunakan untuk melacak file dan direktori. Mereka tidak terlihat oleh sebagian besar aplikasi dan tidak boleh dimodifikasi oleh aplikasi. Memodifikasi pengidentifikasi objek dapat mengakibatkan hilangnya data dari bagian file, hingga dan termasuk seluruh volume data.

Operasi ini mengatur data pengguna hanya di pengidentifikasi objek. Kemungkinan penggunaan adalah menyimpan stempel waktu untuk pembuatan pengidentifikasi objek atau nomor versi yang meningkat secara monoton. Anggota ObjectId dari struktur FILE_OBJECTID_BUFFER diabaikan. Tidak ada mekanisme untuk memodifikasi anggota ObjectId . Penggunaan umum kode kontrol FSCTL_SET_OBJECT_ID_EXTENDED adalah di mana aplikasi tidak menggunakan data pengguna yang dihasilkan oleh sistem file NTFS ketika sistem membuat pengidentifikasi objek.

Untuk mengatur pengidentifikasi objek pada objek yang belum memilikinya, gunakan kode kontrol FSCTL_SET_OBJECT_ID . Agar sistem file NTFS menghasilkan pengidentifikasi objek jika tidak ada, gunakan kode kontrol FSCTL_CREATE_OR_GET_OBJECT_ID .

Perhatikan bahwa stempel waktu mungkin tidak diperbarui dengan benar untuk file jarak jauh. Untuk memastikan hasil yang konsisten, gunakan I/O yang tidak dibuffer.

Di Windows 8 dan Windows Server 2012, kode ini didukung oleh teknologi berikut.

Teknologi Didukung
Protokol Server Message Block (SMB) 3.0 Ya
SMB 3.0 Transparent Failover (TFO) Ya
SMB 3.0 dengan Berbagi File Peluasan Skala (SO) Ya
Sistem File Volume Bersama Kluster (CsvFS) Ya
Sistem File Tangguh (ReFS) Tidak

Persyaratan

   
Klien minimum yang didukung Windows XP [hanya aplikasi desktop]
Server minimum yang didukung Windows Server 2003 [hanya aplikasi desktop]
Header winioctl.h (termasuk Windows.h)

Lihat juga