Constantes de atributo de archivo
Los atributos de archivo son valores de metadatos almacenados por el sistema de archivos en el disco y son utilizados por el sistema y están disponibles para los desarrolladores a través de varias API de E/S de archivos. Para obtener una lista de las API y los temas relacionados, consulte la sección Vea también .
Ejemplo
FILE_BASIC_INFO basicInfo;
BOOL result;
result = GetFileInformationByHandleEx( hFile,
FileBasicInfo,
&basicInfo,
sizeof(basicInfo));
\\...
printf(" File Attributes: ");
PrintFileAttributes(basicInfo.FileAttributes);
\\...
VOID
PrintFileAttributes(
ULONG FileAttributes
)
{
if (FileAttributes & FILE_ATTRIBUTE_ARCHIVE) {
printf("Archive ");
}
if (FileAttributes & FILE_ATTRIBUTE_DIRECTORY) {
printf("Directory ");
}
if (FileAttributes & FILE_ATTRIBUTE_READONLY) {
printf("Read-Only ");
}
}
Ejemplo tomado de un ejemplo clásico de Windows en GitHub.
Constante o valor | Descripción |
---|---|
|
Un archivo que es de solo lectura. Las aplicaciones pueden leer el archivo, pero no pueden escribir en él ni eliminarlo. Este atributo no se respeta en directorios. Para obtener más información, vea No se pueden ver ni cambiar los atributos de solo lectura o System de carpetas en Windows Server 2003, en Windows XP, en Windows Vista o en Windows 7. |
|
El archivo o directorio está oculto. No se incluye en una lista de directorios normal. |
|
Un archivo o directorio del que el sistema operativo usa una parte o utiliza exclusivamente. |
|
Identificador que identifica un directorio. |
|
Un archivo o directorio que es un archivo o directorio de archivo. Las aplicaciones suelen usar este atributo para marcar los archivos de copia de seguridad o eliminación. |
|
Este valor está reservado para uso del sistema. |
|
Archivo que no tiene otros atributos establecidos. Este atributo solo es válido cuando se usa solo. |
|
Un archivo que se usa para el almacenamiento temporal. Los sistemas de archivos evitan volver a escribir datos en almacenamiento masivo si hay suficiente memoria caché disponible, ya que normalmente una aplicación elimina un archivo temporal después de cerrar el identificador. En ese escenario, el sistema puede evitar por completo la escritura de los datos. De lo contrario, los datos se escriben después de cerrar el identificador. |
|
Un archivo que es un archivo disperso. |
|
Un archivo o directorio que tiene un punto de reanálisis asociado o un archivo que es un vínculo simbólico. |
|
Un archivo o directorio comprimido. Para un archivo, todos los datos del archivo se comprimen. Para un directorio, la compresión es el valor predeterminado para los archivos y subdirectorios recién creados. |
|
Los datos de un archivo no están disponibles inmediatamente. Este atributo indica que los datos del archivo se mueven físicamente al almacenamiento sin conexión. El almacenamiento remoto usa este atributo, que es el software de administración de almacenamiento jerárquico. Las aplicaciones no deben cambiar arbitrariamente este atributo. |
|
El servicio de indexación de contenido no indexa el archivo o directorio. |
|
Un archivo o directorio que está cifrado. Para un archivo, todos los flujos de datos del archivo se cifran. Para un directorio, el cifrado es el valor predeterminado para los archivos y subdirectorios recién creados. |
|
El flujo de datos de usuario o directorio está configurado con integridad (solo se admite en volúmenes ReFS). No se incluye en una lista de directorios normal. La configuración de integridad persiste con el archivo si se cambia su nombre. Si se copia un archivo, el archivo de destino tendrá la integridad establecida si el archivo de origen o el directorio de destino tienen la integridad establecida. Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003 y Windows XP: Esta marca no se admite hasta Windows Server 2012. |
|
Este valor está reservado para uso del sistema. |
|
El flujo de datos de usuario no debe ser leído por el analizador de integridad de datos en segundo plano (limpieza de AKA). Cuando se establece en un directorio, solo proporciona herencia. Esta marca solo se admite en volúmenes Espacios de almacenamiento y ReFS. No se incluye en una lista de directorios normal. Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003 y Windows XP: Esta marca no se admite hasta Windows 8 y Windows Server 2012. |
|
Un archivo o directorio con atributos extendidos. IMPORTANTE: Esta constante es solo para uso interno. |
|
Este atributo indica la intención del usuario de que el archivo o directorio debe mantenerse completamente presente localmente incluso cuando no se accede activamente. Este atributo se usa con software de administración de almacenamiento jerárquico. |
|
Este atributo indica que el archivo o directorio no debe mantenerse completamente presente localmente, excepto cuando se accede activamente. Este atributo se usa con software de administración de almacenamiento jerárquico. |
|
Este atributo solo aparece en las clases de enumeración de directorios (FILE_DIRECTORY_INFORMATION, FILE_BOTH_DIR_INFORMATION, etc.). Cuando se establece este atributo, significa que el archivo o directorio no tiene ninguna representación física en el sistema local; el elemento es virtual. Abrir el elemento será más caro de lo normal, por ejemplo, hará que al menos algunos de él se capturen desde un almacén remoto. |
|
Cuando se establece este atributo, significa que el archivo o directorio no está totalmente presente localmente. Para un archivo que significa que no todos sus datos están en el almacenamiento local (por ejemplo, puede estar disperso con algunos datos todavía en el almacenamiento remoto). En el caso de un directorio, significa que parte del contenido del directorio se virtualiza desde otra ubicación. Leer el archivo o enumerar el directorio será más caro de lo normal, por ejemplo, hará que al menos parte del contenido del archivo o directorio se capture desde un almacén remoto. Solo los autores de llamadas en modo kernel pueden establecer este bit. Los mini filtros del sistema de archivos por debajo de 180000: 189999 intervalo de altitud (FSFilter HSM Load Order Group) no deben emitir lecturas o escrituras almacenadas en caché de destino en los archivos que tienen este conjunto de atributos. Esto podría provocar la contaminación de la memoria caché y posibles daños en los archivos. Para obtener más información, consulte Control de marcadores de posición. |
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows XP [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows Server 2003 [solo aplicaciones de escritorio] |
Encabezado | WinNT.h (incluye Windows.h) |