FSCTL_SET_OBJECT_ID IOCTL (winioctl.h)

Establece el identificador de objeto del archivo o directorio especificados.

Para realizar esta operación, llame a la función DeviceIoControl con los siguientes parámetros.

BOOL DeviceIoControl(
  (HANDLE) hDevice,                 // handle to device
  FSCTL_SET_OBJECT_ID,              // 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
);

Comentarios

Los identificadores de objeto se usan para realizar un seguimiento de archivos y directorios. Son invisibles para la mayoría de las aplicaciones y nunca las deben modificar las aplicaciones. La modificación de un identificador de objeto puede dar lugar a la pérdida de datos de partes de un archivo, hasta y hasta volúmenes completos de datos.

Use esta operación para establecer explícitamente un identificador de objeto en un valor que proporcione. Se producirá un error al intentar establecer un identificador de objeto en un objeto que ya tenga un identificador de objeto. También se producirá un error al intentar usar un identificador de objeto que ya esté en uso en el volumen. Use la operación FSCTL_CREATE_OR_GET_OBJECT_ID para que el sistema de archivos NTFS genere un identificador de objeto si el objeto aún no tiene uno.

Tenga en cuenta que es posible que las marcas de tiempo no se actualicen correctamente para un archivo remoto. Para garantizar resultados coherentes, use E/S sin búfer.

En Windows 8 y Windows Server 2012, este código es compatible con las siguientes tecnologías.

Tecnología Compatible
Protocolo Bloque de mensajes del servidor (SMB) 3.0
Conmutación por error transparente (TFO) de SMB 3.0
SMB 3.0 con recursos compartidos de archivos de escalabilidad horizontal (SO)
Sistema de archivos de Volumen compartido de clúster (CsvFS)
Sistema de archivos resistente a errores (ReFS) No

Requisitos

   
Cliente mínimo compatible Windows XP [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2003 [solo aplicaciones de escritorio]
Encabezado winioctl.h (incluye Windows.h)

Consulte también