Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Связывает дескриптор файла времени выполнения C с существующим дескриптором файлов операционной системы.
Синтаксис
int _open_osfhandle (
intptr_t osfhandle,
int flags
);
Параметры
osfhandle
Дескриптор файлов операционной системы.
flags
Разрешенные типы операций.
Возвращаемое значение
В случае успешного выполнения функция _open_osfhandle возвращает дескриптор файла времени выполнения C. Иначе возвращается значение -1.
Замечания
Функция _open_osfhandle выделяет дескриптор файла времени выполнения C. Он связывает этот дескриптор файла с дескриптором файлов операционной системы, указанным в osfhandleфайле. Чтобы избежать предупреждения компилятора, приведите osfhandle аргумент из HANDLE intptr_t. Аргумент flags представляет собой целочисленное выражение, сформированное из одной или нескольких констант манифеста, определенных в <fcntl.h>. Для формирования аргумента можно использовать побитовый оператор "или" () для| объединения двух или более констант манифеста flags .
Эти константы манифеста определены в <fcntl.h>:
| Константа | Description |
|---|---|
_O_APPEND |
Помещает указатель файла в конец файла перед каждой операцией записи. |
_O_RDONLY |
Открывает файл только для чтения. |
_O_TEXT |
Открывает файл в режиме перевода текста ANSI. |
_O_WTEXT |
Открывает файл в режиме Юникода (с преобразованием UTF-16). |
Вызов _open_osfhandle передает права владения дескриптором файла Win32 дескриптору. Чтобы закрыть файл, открытый с помощью _open_osfhandleвызова, вызовите _close. Базовый дескриптор OS также закрывается вызовом _close. Не вызывайте функцию CloseHandle Win32 в исходном дескрипторе. Если дескриптор файла принадлежит FILE * потоку, вызов fclose закрытия дескриптора файла и базового дескриптора. В этом случае не вызывайте _close дескриптор файла или CloseHandle исходный дескриптор.
По умолчанию глобальное состояние этой функции ограничивается приложением. Чтобы изменить это поведение, см . статью "Глобальное состояние" в CRT.
Требования
| Маршрут | Обязательный заголовок |
|---|---|
_open_osfhandle |
<io.h> |
Дополнительные сведения о совместимости см. в разделе Совместимость.