msvcrt — MS VC++ 런타임의 유용한 루틴¶
소스 코드: PC/msvcrtmodule.c
이 함수들은 윈도우 플랫폼에서 유용한 기능에 대한 액세스를 제공합니다. 일부 고수준 모듈은 이러한 함수를 사용하여 해당 서비스의 윈도우 구현을 구축합니다. 예를 들어, getpass 모듈은 getpass() 함수를 구현할 때 이를 사용합니다.
이 함수에 대한 자세한 설명은 플랫폼 API 설명서에서 찾을 수 있습니다.
이 모듈은 콘솔 I/O api의 일반과 광폭(wide) 문자 변형을 모두 구현합니다. 일반 API는 ASCII 문자만 다루며 국제화된 응용 프로그램에서는 제한적으로 사용됩니다. 가능하면 광폭 문자 API를 사용해야 합니다.
가용성: Windows.
파일 연산¶
- msvcrt.locking(fd, mode, nbytes)¶
C 런타임의 파일 기술자 fd를 기반으로 파일 일부를 잠급니다. 실패하면
OSError를 발생시킵니다. 파일의 잠긴 영역은 현재 파일 위치에서부터 nbytes 바이트까지며, 파일 끝을 넘어 계속될 수 있습니다. mode는 아래에 나열된LK_*상수 중 하나여야 합니다. 파일의 여러 영역이 동시에 잠길 수 있지만 겹칠 수는 없습니다. 인접한 영역은 병합되지 않습니다; 개별적으로 잠금을 해제해야 합니다.인자
fd,mode,nbytes로 감사 이벤트msvcrt.locking을 발생시킵니다.
- msvcrt.LK_LOCK¶
- msvcrt.LK_RLCK¶
지정된 바이트를 잠급니다. 바이트를 잠글 수 없으면, 프로그램은 1초 후에 즉시 다시 시도합니다. 10 번 시도한 후에도 바이트를 잠글 수 없으면,
OSError가 발생합니다.
- msvcrt.LK_UNLCK¶
이전에 잠겨 있어야 하는 지정된 바이트의 잠금을 해제합니다.
- msvcrt.setmode(fd, flags)¶
파일 기술자 fd의 줄 종료 변환 모드를 설정합니다. 텍스트 모드로 설정하려면, flags가
os.O_TEXT여야 합니다; 바이너리는,os.O_BINARY여야 합니다.
- msvcrt.open_osfhandle(handle, flags)¶
파일 핸들 handle에서 C 런타임 파일 기술자를 만듭니다. flags 매개 변수는
os.O_APPEND,os.O_RDONLY,os.O_TEXT및os.O_NOINHERIT의 비트별 OR 여야 합니다. 반환된 파일 기술자는os.fdopen()에 대한 매개 변수로 사용되어 파일 객체를 만들 수 있습니다.파일 기술자는 기본적으로 상속 가능합니다. 상속 불가능하게 만들려면
os.O_NOINHERIT플래그를 전달하십시오.인자
handle,flags로 감사 이벤트msvcrt.open_osfhandle을 발생시킵니다.
콘솔 I/O¶
- msvcrt.kbhit()¶
읽을 수 있는 키 누르기가 대기 중이면 0이 아닌 값을 반환합니다. 그렇지 않으면, 0을 반환합니다.
- msvcrt.getch()¶
키 누르기를 읽고 결과 문자를 바이트열로 반환합니다. 콘솔에 아무것도 에코 되지 않습니다. 이 호출은 키 누르기를 아직 사용할 수 없으면 블록하지만, Enter가 눌러지기를 기다리지는 않습니다. 누른 키가 특수 기능 키면,
'\000'이나'\xe0'를 반환합니다; 다음 호출은 키코드를 반환합니다. 이 함수로 Control-C 키 누르기를 읽을 수 없습니다.
- msvcrt.putch(char)¶
버퍼링하지 않고 바이트열 char을 콘솔에 인쇄합니다.
기타 함수¶
- msvcrt.set_error_mode(mode)¶
프로그램을 끝낼 수 있는 오류에 대해 C 런타임이 오류 메시지를 기록하는 위치를 변경합니다. mode 는 아래 나열된
OUT_*상수 중 하나여야 하거나REPORT_ERRMODE여야 합니다. 이전 설정을 반환하거나 오류가 발생하면 -1을 반환합니다. <debug-build> 의 Python에서만 사용 가능합니다.
- msvcrt.CrtSetReportMode(type, mode)¶
MS VC++ 런타임에서
_CrtDbgReport()에 의해 생성된 특정 보고 유형의 대상 또는 대상들을 지정합니다. type 은 아래 나열된CRT_*상수 중 하나여야 합니다. mode 는 아래 나열된CRTDBG_*상수 중 하나여야 합니다. <debug-build> 의 Python에서만 사용 가능합니다.
- msvcrt.CrtSetReportFile(type, file)¶
CrtSetReportMode()를 사용하여CRTDBG_MODE_FILE을 지정한 후, 메시지 텍스트를 받을 파일 핸들을 지정할 수 있습니다. type 은 아래 나열된CRT_*상수 중 하나여야 합니다. file 은 지정하려는 파일 핸들이어야 합니다. <debug-build> 의 Python에서만 사용 가능합니다.
- msvcrt.CRT_WARN¶
주의가 즉시 필요하지 않은 경고, 메시지, 정보입니다.
- msvcrt.CRT_ERROR¶
즉각적인 주의가 필요한 오류, 복구 불가능한 문제, 문제들입니다.
- msvcrt.CRT_ASSERT¶
어설션 실패입니다.
- msvcrt.CRTDBG_MODE_DEBUG¶
메시지를 디버거의 출력 창에 기록합니다.
- msvcrt.CRTDBG_MODE_FILE¶
메시지를 사용자 제공 파일 핸들에 기록합니다. 목적지로 사용할 특정 파일이나 스트림을 정의하려면 :func:`CrtSetReportFile`을 호출해야 합니다.
- msvcrt.CRTDBG_MODE_WNDW¶
메시지 상자를 생성하여 메시지와 함께
Abort,Retry, 및Ignore버튼을 표시합니다.
- msvcrt.CRTDBG_REPORT_MODE¶
지정된 type 에 대한 현재 mode 를 반환합니다.
- msvcrt.CRT_ASSEMBLY_VERSION¶
crtassem.h헤더 파일의 CRT 어셈블리 버전입니다.
- msvcrt.VC_ASSEMBLY_PUBLICKEYTOKEN¶
crtassem.h헤더 파일의 VC 어셈블리 공개 키 토큰입니다.
- msvcrt.LIBRARIES_ASSEMBLY_NAME_PREFIX¶
crtassem.h헤더 파일의 라이브러리 어셈블리 이름 접두사입니다.