Составители:
Таблица 5.4
Аргумент Описание
lpFileName Указатель на имя файла или устройства
DesiredAccess Устанавливает вид доступа к объекту. Используются флаги GE-
NERIC_READ (чтение), GENERIC_WRITE (запись) или оба при
помощи оператора логического сложения. Значение 0 указывает
на необходимость проверки возможности доступа.
dwShareMode Набор битовых флагов, указывающий на режим совместного
доступа к объекту. Если значение dwShareMode равно 0, совме-
стный доступ к объекту запрещен. Флаги FILE_SHARE_DELETE
(совместное удаление), FILE_SHARE_READ (совместное чте-
ние) и FILE_SHARE_WRITE (совместная запись).
lpSecurityAttributes Указатель на структуру SECURITY_ATTRIBUTES, которая оп-
ределяет, будет ли создаваемый дескриптор наследоваться до-
черними процессами. Если аргумент lpSecurityAttributes имеет
значение NULL, дескриптор не будет наследоваться.
dwCreationDisposi-
tion
Указывает, каким образом следует создать (или открыть) файл.
Допускается использовать следующие значения: CREATE_NEW
(создать новый файл; если файл существует, функция не сраба-
тывает), CREATE_ALWAYS (создать новый файл; если файл
существует, он перезаписывается), OPEN_EXISTING (открыть
файл; если файл не существует, функция не срабатывает),
OPEN_ALWAYS (открыть файл; если файл не существует, он
создается) или TRUNCATE_EXISTING (открыть файл и сделать
его равным нулю; если файл не существует- не срабатывает).
dwFlagsAndAttributes Набор атрибутов и флагов, которыми должен обладать файл.
Например, если требуется, чтобы новый файл был скрытым, ис-
пользуйте значение FILE_ATTRIBUTE_HIDDEN. Другие воз-
можные значения флагов перечислены в табл. 5.5.
hTemplateFile Содержит дескриптор с доступом GENERIC_READ. Это деск-
риптор шаблонного файла, атрибуты которого (включая расши-
ренные) будут присвоены создаваемому файлу.
Наиболее интересным аргументом функции CreateFile() является предпоследний,
шестой аргумент, который является набором флагов доступа к файлу и атрибутов фай-
ловой системы. Используя различные комбинации флагов (табл. 5.5), можно настроить
доступ к файлу самым причудливым образом. Например, можно приказать системе уда-
лить файл сразу же после того, как он будет закрыт, или объявить, что файл будет ис-
пользоваться для перекрывающегося (overlapped) доступа (перекрывающийся доступ -
базовый метод осуществления асинхронного ввода/вывода). Помимо прочего флаги по-
зволяют управлять механизмом кэширования.
Таблица 5.5
Флаг Значение
1 2
FILE_FLAG_WRITE_THROUGH Приказывает Windows осуществлять немед-
ленную запись данных на диск. При этом воз-
можно использование КЭШа.
FILE_FLAG_NO_BUFFERING Приказывает системе открыть файл без ис-
пользования кэширования или буферизации,
что дает максимальную производительность.
Окончание табл. 5.5
1 2
133
Таблица 5.4
Аргумент Описание
lpFileName Указатель на имя файла или устройства
DesiredAccess Устанавливает вид доступа к объекту. Используются флаги GE-
NERIC_READ (чтение), GENERIC_WRITE (запись) или оба при
помощи оператора логического сложения. Значение 0 указывает
на необходимость проверки возможности доступа.
dwShareMode Набор битовых флагов, указывающий на режим совместного
доступа к объекту. Если значение dwShareMode равно 0, совме-
стный доступ к объекту запрещен. Флаги FILE_SHARE_DELETE
(совместное удаление), FILE_SHARE_READ (совместное чте-
ние) и FILE_SHARE_WRITE (совместная запись).
lpSecurityAttributes Указатель на структуру SECURITY_ATTRIBUTES, которая оп-
ределяет, будет ли создаваемый дескриптор наследоваться до-
черними процессами. Если аргумент lpSecurityAttributes имеет
значение NULL, дескриптор не будет наследоваться.
dwCreationDisposi- Указывает, каким образом следует создать (или открыть) файл.
tion Допускается использовать следующие значения: CREATE_NEW
(создать новый файл; если файл существует, функция не сраба-
тывает), CREATE_ALWAYS (создать новый файл; если файл
существует, он перезаписывается), OPEN_EXISTING (открыть
файл; если файл не существует, функция не срабатывает),
OPEN_ALWAYS (открыть файл; если файл не существует, он
создается) или TRUNCATE_EXISTING (открыть файл и сделать
его равным нулю; если файл не существует- не срабатывает).
dwFlagsAndAttributes Набор атрибутов и флагов, которыми должен обладать файл.
Например, если требуется, чтобы новый файл был скрытым, ис-
пользуйте значение FILE_ATTRIBUTE_HIDDEN. Другие воз-
можные значения флагов перечислены в табл. 5.5.
hTemplateFile Содержит дескриптор с доступом GENERIC_READ. Это деск-
риптор шаблонного файла, атрибуты которого (включая расши-
ренные) будут присвоены создаваемому файлу.
Наиболее интересным аргументом функции CreateFile() является предпоследний,
шестой аргумент, который является набором флагов доступа к файлу и атрибутов фай-
ловой системы. Используя различные комбинации флагов (табл. 5.5), можно настроить
доступ к файлу самым причудливым образом. Например, можно приказать системе уда-
лить файл сразу же после того, как он будет закрыт, или объявить, что файл будет ис-
пользоваться для перекрывающегося (overlapped) доступа (перекрывающийся доступ -
базовый метод осуществления асинхронного ввода/вывода). Помимо прочего флаги по-
зволяют управлять механизмом кэширования.
Таблица 5.5
Флаг Значение
1 2
FILE_FLAG_WRITE_THROUGH Приказывает Windows осуществлять немед-
ленную запись данных на диск. При этом воз-
можно использование КЭШа.
FILE_FLAG_NO_BUFFERING Приказывает системе открыть файл без ис-
пользования кэширования или буферизации,
что дает максимальную производительность.
Окончание табл. 5.5
1 2
133
Страницы
- « первая
- ‹ предыдущая
- …
- 129
- 130
- 131
- 132
- 133
- …
- следующая ›
- последняя »
