Главная Случайная страница


Полезное:

Как сделать разговор полезным и приятным Как сделать объемную звезду своими руками Как сделать то, что делать не хочется? Как сделать погремушку Как сделать так чтобы женщины сами знакомились с вами Как сделать идею коммерческой Как сделать хорошую растяжку ног? Как сделать наш разум здоровым? Как сделать, чтобы люди обманывали меньше Вопрос 4. Как сделать так, чтобы вас уважали и ценили? Как сделать лучше себе и другим людям Как сделать свидание интересным?


Категории:

АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника






Замечания





Используйте функцию CloseHandle, чтобы закрыть дескриптор объекта, возвращенный CreateFile.

Windows Server 2003, Windows XP, Windows 2000: Если, для удаления, делается попытка открыть файл или каталог на отдаленной машине, когда значение параметра dwDesiredAccess равно флажку доступа DELETE, который объединен при помощи логического ИЛИ (OR) с любым другим флажком доступа, а удаляемый файл или каталог не был открыт с флажком FILE_SHARE_DELETE, произойдет ошибка совместного доступа. Чтобы избежать ошибки совместного доступа в этом сценарии, откройте удаляемый файл или каталог с только правом доступа DELETE или, для удаления, вызовите функцию DeleteFile без первоначального открытия файла или каталога.

Некоторые файловые системы, такие как NTFS, поддерживают сжатие или шифрование для отдельных файлов и каталогов. В томах, отформатированных для такой файловой системы, новый файл наследует сжатие и атрибуты шифрования из своего каталога.

Вы не можете использовать CreateFile, чтобы управлять сжатием файла или каталога. Информацию о сжатых файлах и о разрешении или запрещении сжатия файла внутри каталога, см. разделе Сжатие файла и восстановление сжатых данных.

Дополнительную информацию о шифровании и расшифровке фалов и о разрешении или запрещении шифрования файла внутри каталога смотри в разделе Шифрование файла.

Windows Server 2003, Windows XP, Windows 2000: Для обеспечения совместимости вниз, функция CreateFile не применяет правила наследования, когда Вы определяете дескриптор безопасности в lpSecurityAttributes. Чтобы поддерживать наследование, функции, которые позже сделали запрос дескриптора безопасности этого объекта, могут эвристически определять и сообщать, что наследование действует. Дополнительную информацию см. в разделе Автоматическое распространение наследуемых элементов списка контроля доступа (ACE).

Windows 95/98/Me: CreateFileW поддерживается подпрограммой Microsoft Layer for Unicode. Чтобы использовать ее, Вы должны добавить некоторые файлы к вашему приложению, как изложено в описании Microsoft Layer for Unicode для системы Windows 95/98/Me.

Файлы

Если Вы пытаетесь создать файл в дисководе для гибких дискет или CD-ROM, в котором нет гибкого диска или CD -диска, система показывает на экране окно сообщений, запрашивающее пользователя вставить дискету или CD, соответственно. Чтобы воспрепятствовать системе показывать на экране это окно сообщений, вызовите функцию SetErrorMode с флажком SEM_FAILCRITICALERRORS.

Windows Server 2003, Windows XP, Windows 2000: Если установлены флажки CREATE_ALWAYS и FILE_ATTRIBUTE_NORMAL, функция CreateFile завершится ошибкой и установит последнюю ошибку в функции GetLastError как ACCESS_DENIED, если файл существует и имеет значение атрибутов FILE_ATTRIBUTE_HIDDEN и FILE_ATTRIBUTE_NORMAL. Чтобы избежать этой ошибки, установите некоторые атрибуты также как у существующего файла.

Перечень действий, которые совершает функция CreateFile при создании нового или открытии существующего файла смотри в статье Создание и открытие файлов

Windows NT/2000/XP: Если Вы переименовали или удалили файл, а затем, вскоре после этого, восстанавливайте его, чтобы восстановить файл система разыскивает кэш с информацией о файле. Кэшируемая информация включает в себя его короткую/длинную пару имен и время создания.

Windows Me/98/95: Это замечание не применяется.

Если Вы вызываете CreateFile для файла, который ожидает удаления в результате предыдущего вызова функции DeleteFile, функция завершается ошибкой. Операционная система задерживает удаление файла до тех пор, пока все дескрипторы файла не будут закрыты. GetLastError возвращает значение ERROR_ACCESS_DENIED.

Когда приложение создает файл через сеть, лучше использовать GENERIC_READ | GENERIC_WRITE чем использовать один флажок GENERIC_WRITE. Получающийся код должен быть быстрее, потому что система переадресации может использовать диспетчер кэша и отправлять меньше блоков серверных сообщений (SMB) с большим количеством данных. Эта комбинация также устраняет проблему, куда при записи в файл через сеть можно иногда возвращать значение ERROR_ACCESS_DENIED.

Date: 2015-07-27; view: 426; Нарушение авторских прав; Помощь в написании работы --> СЮДА...



mydocx.ru - 2015-2024 year. (0.006 sec.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав - Пожаловаться на публикацию