Функция GetFileAttributes получает набор атрибутов файловой системы FAT для указанного файла или директории.
Для получения большего числа атрибутов, используйте функцию GetFileAttributesEx.
Для получения большего числа атрибутов, используйте функцию GetFileAttributesEx.
DWORD GetFileAttributes (
LPCTSTR lpFileName
);
Параметры:
Адрес нульзаканчивающейся строки, которая определяет имя файла или директории. В ANSI-версия этой функции, имя ограничено в MAX_PATH символов. Для увеличения этого предела до 32,767 широких символов, вызывайте Unicode-версию функции, добавив к пути "\\?\". Windows Me/98/95: Эта строка не должна превышать MAX_PATH символов. |
Возвращаемые значения:
Если функция успешна, возвращаемое значение содержит атрибуты указанного файла или директории.
При ошибке, возвращается значение INVALID_FILE_ATTRIBUTES. Для получения дополнительной информации об ошибке, вызывайте GetLastError.
Атрибуты могут иметь одно или более следующих значений:
При ошибке, возвращается значение INVALID_FILE_ATTRIBUTES. Для получения дополнительной информации об ошибке, вызывайте GetLastError.
Атрибуты могут иметь одно или более следующих значений:
Значение: | Описание: |
Файл может быть заархивирован. Приложение использует этот атрибут для пометки файлов для резервного копирования или перемещения. | |
Файл или директория сжат. Для файлов, все данные в файле сжаты. Для директории, сжатие происходит для всех новосозданных файлов и поддиректорий. | |
Зарезервировано; не используется. | |
Дескриптор идентифицирует директорию. Файл или директория зашифрован. Для файла, все потоки данных в файле зашифрованы. Для директории, шифрование происходит для всех новосозданных файлов и поддиректорий. | |
Файл или директория зашифрован. Для файла, все потоки данных в файле зашифрованы. Для директории, шифрование происходит для всех новосозданных файлов и поддиректорий. | |
Файл или директория спрятан. Это не распространяется к обычному содержанию директории. | |
Файл или директория, который не имеет других установленных атрибутов. Этот атрибут действителен, если он используется одним. | |
Файл не индексируется контекстом сервиса индексирования. | |
Данные в файле не являются немедленно достижимыми. Этот атрибут указывает, что данные файла физически перемещены на внешнее хранилище. Приложение не может произвольно изменять этот атрибут. | |
Файл или директория предназначены только для чтения. Для файлов, приложение может читать из файла, но не может в него записывать или удалять его. Для директории, приложение не может удалять ее. | |
Файл или директория, который имеет ассоциацию с reparse точкой. | |
Файл, который является разреженным файлом | |
Файл или директория, который операционная система использует как часть себя, или использует внутренне. | |
Файл будет использован для временного хранения. Файловая система избегает записи данных назад в хранилище, если имеется в распоряжении достаточно кэша, потому что приложение удаляет временный файл после того, как дескриптор закрывается. В этом случае, система может всецело избежать записи данных. В другом случае, данные записываются после закрытия дескриптора. |
Замечания:
Когда GetFileAttributes вызывется для директории, которая содержит точку монтирования раздела, возвращаемые файловые атрибуты являются атрибутами директории, к которой примонтирован раздел, а не атрибуты корневой директории в монтируемом разделе. Для получение атрибутов смонтированного раздела, вызовите GetVolumeNameForVolumeMountPoint, для получения имени раздела. Затем используйте это имя в вызове GetFileAttributes.
Если путь указывает символическую ссылку, функция возвращает атрибуты для этой символической ссылки.
Если путь указывает символическую ссылку, функция возвращает атрибуты для этой символической ссылки.