Partager via


FSCTL_CREATE_OR_GET_OBJECT_ID IOCTL (winioctl.h)

Récupère l’identificateur d’objet pour le fichier ou le répertoire spécifié. Si aucun identificateur d’objet n’existe, l’utilisation de FSCTL_CREATE_OR_GET_OBJECT_ID en crée une.

Pour effectuer cette opération, appelez la fonction DeviceIoControl avec les paramètres suivants.

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

Remarques

Les identificateurs d’objet sont utilisés pour suivre les fichiers et les répertoires. Elles sont invisibles pour la plupart des applications et ne doivent jamais être modifiées par les applications. La modification d’un identificateur d’objet peut entraîner la perte de données provenant de parties d’un fichier, jusqu’à l’intégralité des volumes de données.

Cette opération crée un identificateur d’objet si l’objet n’en a pas déjà un. Pour tester la présence d’un identificateur d’objet et le récupérer s’il existe, utilisez l’opération de FSCTL_GET_OBJECT_ID . Pour affecter manuellement un identificateur d’objet, utilisez l’opération de FSCTL_SET_OBJECT_ID .

Dans Windows Server 2012, cette fonction est prise en charge par les technologies suivantes.

Technologie Soutenu
Protocole SMB (Server Message Block) 3.0 Oui
Basculement transparent SMB 3.0 (TFO) Oui
SMB 3.0 avec partages de fichiers avec montée en puissance parallèle (SO) Oui
Système de fichiers de volume partagé de cluster (CsvFS) Oui
Système de fichiers résilient (ReFS) Non

Spécifications

Besoin Valeur
Client minimum requis Windows XP [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2003 [applications de bureau uniquement]
En-tête winioctl.h (include Windows.h)

Voir aussi