msvcrt — Полезные функции среды выполнения MS VC++
Эти функции предоставляют доступ к некоторым полезным возможностям на платформах Windows. Некоторые модули более высокого уровня используют эти функции для создания реализаций своих служб для Windows. Например, модуль getpass использует эту функцию при реализации функции getpass().
Дополнительную документацию по этим функциям можно найти в документации Platform API.
Модуль реализует обычный и широкосимвольный варианты API консольного ввода-вывода. Обычный API работает только с символами ASCII и имеет ограниченное применение в интернационализированных приложениях. По возможности следует использовать широкосимвольный API.
Доступность: Windows.
Операции с файлами
-
msvcrt.locking(fd, mode, nbytes) -
Блокирует часть файла, связанного с файловым дескриптором fd среды выполнения C. При ошибке вызывает исключение
OSError. Заблокированная область файла начинается с текущей позиции в файле, имеет длину nbytes байт и может выходить за конец файла. Параметр mode должен быть одной из перечисленных ниже константLK_*. Одновременно можно блокировать несколько областей файла, но они не должны перекрываться. Соседние области не объединяются; их необходимо разблокировать по отдельности.Вызывает событие аудита
msvcrt.lockingс аргументамиfd,mode,nbytes.
-
msvcrt.LK_LOCK -
msvcrt.LK_RLCK -
Блокирует указанные байты. Если байты не удаётся заблокировать, программа немедленно повторяет попытку через 1 секунду. Если после 10 попыток байты заблокировать не удаётся, вызывается исключение
OSError.
-
msvcrt.LK_NBLCK -
msvcrt.LK_NBRLCK -
Блокирует указанные байты. Если байты не удаётся заблокировать, вызывается исключение
OSError.
-
msvcrt.LK_UNLCK -
Разблокирует указанные байты, которые должны быть предварительно заблокированы.
-
msvcrt.setmode(fd, flags) -
Задаёт режим преобразования окончаний строк для файлового дескриптора fd. Чтобы установить текстовый режим, параметр flags должен иметь значение
os.O_TEXT; для двоичного режима —os.O_BINARY.
-
msvcrt.open_osfhandle(handle, flags) -
Создаёт файловый дескриптор среды выполнения C на основе файлового дескриптора ОС handle. Параметр flags должен быть побитовым ИЛИ значений
os.O_APPEND,os.O_RDONLY,os.O_TEXTиos.O_NOINHERIT. Возвращённый файловый дескриптор можно передать в качестве параметра функцииos.fdopen()для создания файлового объекта.По умолчанию файловый дескриптор наследуется. Чтобы запретить наследование, передайте флаг
os.O_NOINHERIT.Вызывает событие аудита
msvcrt.open_osfhandleс аргументамиhandle,flags.
-
msvcrt.get_osfhandle(fd) -
Возвращает файловый дескриптор ОС для файлового дескриптора fd. Если fd не распознан, вызывается исключение
OSError.Вызывает событие аудита
msvcrt.get_osfhandleс аргументомfd.
Консольный ввод-вывод
-
msvcrt.kbhit() -
Возвращает ненулевое значение, если ожидается нажатие клавиши для чтения. В противном случае возвращает 0.
-
msvcrt.getch() -
Считывает нажатие клавиши и возвращает соответствующий символ в виде байтовой строки. Символ не отображается в консоли. Вызов блокируется, если нажатие клавиши ещё не поступило, но не ждёт нажатия клавиши Enter. Если нажата специальная функциональная клавиша, функция вернёт
'\000'или'\xe0'; следующий вызов вернёт код клавиши. Нажатие клавиш Control-C этой функцией считать нельзя.
-
msvcrt.getwch() -
Широкосимвольный вариант функции
getch(), возвращающий значение Unicode.
-
msvcrt.getche() -
Похожа на функцию
getch(), но нажатие клавиши отображается, если оно соответствует печатному символу.
-
msvcrt.getwche() -
Широкосимвольный вариант функции
getche(), возвращающий значение Unicode.
-
msvcrt.putch(char) -
Выводит байтовую строку char в консоль без буферизации.
-
msvcrt.putwch(unicode_char) -
Широкосимвольный вариант функции
putch(), принимающий значение Unicode.
-
msvcrt.ungetch(char) -
«Возвращает» байтовую строку char в буфер консоли; она станет следующим символом, считанным функцией
getch()илиgetche().
-
msvcrt.ungetwch(unicode_char) -
Широкосимвольный вариант функции
ungetch(), принимающий значение Unicode.
Другие функции
-
msvcrt.heapmin() -
Заставляет кучу
malloc()выполнить очистку и вернуть неиспользуемые блоки операционной системе. При ошибке вызывает исключениеOSError.
-
msvcrt.set_error_mode(mode) -
Изменяет место, куда среда выполнения C записывает сообщение об ошибке, которая может привести к завершению программы. Параметр mode должен быть одной из перечисленных ниже констант
OUT_*илиREPORT_ERRMODE. Возвращает предыдущее значение или -1, если произошла ошибка. Доступно только в отладочной сборке Python.
-
msvcrt.OUT_TO_DEFAULT -
Назначение сообщений об ошибках определяется типом приложения. Доступно только в отладочной сборке Python.
-
msvcrt.OUT_TO_STDERR -
Сообщения об ошибках выводятся в стандартный поток ошибок. Доступно только в отладочной сборке Python.
-
msvcrt.OUT_TO_MSGBOX -
Сообщения об ошибках выводятся в диалоговое окно. Доступно только в отладочной сборке Python.
-
msvcrt.REPORT_ERRMODE -
Возвращает текущее значение режима обработки ошибок. Доступно только в отладочной сборке Python.
-
msvcrt.CrtSetReportMode(type, mode) -
Указывает место или места назначения для определённого типа отчёта, создаваемого функцией
_CrtDbgReport()в среде выполнения MS VC++. Параметр type должен быть одной из перечисленных ниже константCRT_*. Параметр mode должен быть одной из перечисленных ниже константCRTDBG_*. Доступно только в отладочной сборке Python.
-
msvcrt.CrtSetReportFile(type, file) -
После вызова
CrtSetReportMode()для указанияCRTDBG_MODE_FILEможно указать файловый дескриптор, в который будет записан текст сообщения. Параметр type должен быть одной из перечисленных ниже константCRT_*. Параметр file должен содержать нужный файловый дескриптор. Доступно только в отладочной сборке Python.
-
msvcrt.CRT_WARN -
Предупреждения, сообщения и сведения, не требующие немедленного внимания.
-
msvcrt.CRT_ERROR -
Ошибки, неисправимые проблемы и ситуации, требующие немедленного внимания.
-
msvcrt.CRT_ASSERT -
Сбои утверждений.
-
msvcrt.CRTDBG_MODE_DEBUG -
Записывает сообщение в окно вывода отладчика.
-
msvcrt.CRTDBG_MODE_FILE -
Записывает сообщение в файловый дескриптор, заданный пользователем. Для указания конкретного файла или потока, используемого в качестве назначения, следует вызвать
CrtSetReportFile().
-
msvcrt.CRTDBG_MODE_WNDW -
Создаёт диалоговое окно для отображения сообщения и кнопок
Abort,RetryиIgnore.
-
msvcrt.CRTDBG_REPORT_MODE -
Возвращает текущее значение mode для указанного type.
-
msvcrt.CRT_ASSEMBLY_VERSION -
Версия сборки CRT из заголовочного файла
crtassem.h.
-
msvcrt.VC_ASSEMBLY_PUBLICKEYTOKEN -
Токен открытого ключа сборки VC из заголовочного файла
crtassem.h.
-
msvcrt.LIBRARIES_ASSEMBLY_NAME_PREFIX -
Префикс имени сборки Libraries из заголовочного файла
crtassem.h.
© 2001 Python Software Foundation
Licensed under the PSF License.
https://docs.python.org/3.14/library/msvcrt.html