msvcrt
— Användbara rutiner från MS VC++ runtime¶
Dessa funktioner ger tillgång till en del användbara funktioner på Windows-plattformar. Vissa moduler på högre nivå använder dessa funktioner för att bygga Windows-implementationer av sina tjänster. Modulen getpass
använder till exempel detta i implementeringen av funktionen getpass()
.
Mer information om dessa funktioner finns i dokumentationen för Platform API.
Modulen implementerar både den normala varianten och wide char-varianten av konsolens I/O-api. Det normala API:et hanterar endast ASCII-tecken och är av begränsad nytta för internationaliserade applikationer. API:et för breda tecken bör användas när det är möjligt.
Ändrad i version 3.3: Operationer i denna modul ger nu upphov till OSError
där IOError
tidigare gav upphov till.
Filoperationer¶
- msvcrt.locking(fd, mode, nbytes)¶
Låser en del av en fil baserat på filbeskrivaren fd från C-körtiden. Utlöser
OSError
om det misslyckas. Den låsta delen av filen sträcker sig från den aktuella filpositionen i nbytes bytes och kan fortsätta längre än till slutet av filen. mode måste vara en av deLK_*
-konstanter som listas nedan. Flera regioner i en fil kan låsas samtidigt, men de får inte överlappa varandra. Angränsande regioner slås inte samman, utan måste låsas upp var för sig.Utlöser en auditing-händelse
msvcrt.locking
med argumentenfd
,mode
,nbytes
.
- msvcrt.LK_LOCK¶
- msvcrt.LK_RLCK¶
Låser de angivna bytena. Om bytena inte kan låsas försöker programmet omedelbart igen efter 1 sekund. Om bytena inte kan låsas efter 10 försök utlöses
OSError
.
- msvcrt.LK_NBLCK¶
- msvcrt.LK_NBRLCK¶
Låser de angivna byte. Om byte inte kan låsas kommer
OSError
att uppstå.
- msvcrt.LK_UNLCK¶
Låser upp de angivna bytena, som måste ha varit låsta tidigare.
- msvcrt.setmode(fd, flags)¶
Ställer in översättningsläget för radavslut för filbeskrivaren fd. För att ställa in det till textläge bör flags vara
os.O_TEXT
; för binärt bör det varaos.O_BINARY
.
- msvcrt.open_osfhandle(handle, flags)¶
Skapa en C runtime file descriptor från filhandtaget handle. Parametern flags bör vara ett bitvis ELLER av
os.O_APPEND
,os.O_RDONLY
,os.O_TEXT
ochos.O_NOINHERIT
. Den returnerade filbeskrivaren kan användas som en parameter tillos.fdopen()
för att skapa ett filobjekt.Filbeskrivaren är ärftlig som standard. Passera
os.O_NOINHERIT
flagga för att göra den icke ärftlig.Utlöser en auditing event
msvcrt.open_osfhandle
med argumentenhandle
,flags
.
- msvcrt.get_osfhandle(fd)¶
Returnerar filhandtaget för filbeskrivaren fd. Utlöser
OSError
om fd inte känns igen.Utlöser en auditing event
msvcrt.get_osfhandle
med argumentfd
.
Konsol I/O¶
- msvcrt.kbhit()¶
Returnerar ett värde som inte är noll om en knapptryckning väntar på att läsas. I annat fall returneras 0.
- msvcrt.getch()¶
Läser en tangenttryckning och returnerar det resulterande tecknet som en byte-sträng. Ingenting ekas till konsolen. Detta anrop blockeras om en tangenttryckning inte redan är tillgänglig, men väntar inte på att Enter ska tryckas. Om den nedtryckta tangenten var en speciell funktionstangent kommer detta att returnera
'\000'
eller'\xe0'
; nästa anrop kommer att returnera tangentkoden. Tangenttryckningen Control-C kan inte läsas med denna funktion.
- msvcrt.getche()¶
Liknar
getch()
, men tangenttryckningen ekas om den representerar ett skrivbart tecken.
- msvcrt.putch(char)¶
Skriv ut byte-strängen char till konsolen utan buffring.
Övriga funktioner¶
- msvcrt.heapmin()¶
Tvingar heapen
malloc()
att rensa upp sig själv och returnera oanvända block till operativsystemet. Om detta misslyckas uppstårOSError
.
- msvcrt.set_error_mode(mode)¶
Ändrar platsen där C-körtiden skriver ett felmeddelande för ett fel som kan avsluta programmet. mode måste vara en av
OUT_*
-konstanterna som listas nedan ellerREPORT_ERRMODE
. Returnerar den gamla inställningen eller -1 om ett fel inträffar. Endast tillgängligt i debug build av Python.
- msvcrt.OUT_TO_DEFAULT¶
Felsänkningen bestäms av appens typ. Endast tillgänglig i debug build av Python.
- msvcrt.OUT_TO_STDERR¶
Error sink är ett standardfel. Endast tillgängligt i debug build av Python.
- msvcrt.OUT_TO_MSGBOX¶
Error sink är en meddelanderuta. Endast tillgänglig i debug build av Python.
- msvcrt.REPORT_ERRMODE¶
Rapportera det aktuella värdet för felläget. Endast tillgängligt i debug build av Python.
- msvcrt.CrtSetReportMode(type, mode)¶
Anger destinationen eller destinationerna för en viss rapporttyp som genereras av
_CrtDbgReport()
i MS VC++ runtime. type måste vara en av deCRT_*
-konstanter som listas nedan. mode måste vara en av deCRTDBG_*
-konstanter som anges nedan. Endast tillgänglig i debug build av Python.
- msvcrt.CrtSetReportFile(type, file)¶
När du har använt
CrtSetReportMode()
för att angeCRTDBG_MODE_FILE
, kan du ange filhandtaget för att ta emot meddelandetexten. type måste vara en av deCRT_*
-konstanter som listas nedan. file bör vara det filhandtag som du vill ha angivet. Endast tillgängligt i debug build av Python.
- msvcrt.CRT_WARN¶
Varningar, meddelanden och information som inte kräver omedelbar uppmärksamhet.
- msvcrt.CRT_ERROR¶
Fel, problem som inte går att åtgärda och problem som kräver omedelbar åtgärd.
- msvcrt.CRT_ASSERT¶
Felaktiga påståenden.
- msvcrt.CRTDBG_MODE_DEBUG¶
Skriver meddelandet till debuggarens utdatafönster.
- msvcrt.CRTDBG_MODE_FILE¶
Skriver meddelandet till ett filhandtag som användaren angett.
CrtSetReportFile()
bör anropas för att definiera den specifika fil eller ström som ska användas som destination.
- msvcrt.CRTDBG_MODE_WNDW¶
Skapar en meddelanderuta för att visa meddelandet tillsammans med knapparna ”Avbryt”, ”Återgå” och ”Ignorera”.
- msvcrt.CRTDBG_REPORT_MODE¶
Returnerar aktuellt läge för den angivna typen.
- msvcrt.CRT_ASSEMBLY_VERSION¶
CRT Assembly-versionen, från huvudfilen
crtassem.h
.
- msvcrt.VC_ASSEMBLY_PUBLICKEYTOKEN¶
VC Assembly offentliga nyckeltoken, från huvudfilen
crtassem.h
.
- msvcrt.LIBRARIES_ASSEMBLY_NAME_PREFIX¶
Prefixet för Libraries Assembly-namnet, från huvudfilen
crtassem.h
.