msvcrt — Nützliche Routinen aus der MS VC++ Laufzeitumgebung¶
Diese Funktionen bieten Zugriff auf einige nützliche Funktionen unter Windows-Plattformen. Einige Module auf höherer Ebene verwenden diese Funktionen, um die Windows-Implementierungen ihrer Dienste zu erstellen. Zum Beispiel verwendet das Modul getpass diese in der Implementierung der Funktion getpass().
Weitere Dokumentation zu diesen Funktionen finden Sie in der Dokumentation der Plattform-API.
Das Modul implementiert sowohl die normalen als auch die Wide-Char-Varianten der Konsolen-I/O-API. Die normale API verarbeitet nur ASCII-Zeichen und ist für internationalisierte Anwendungen nur begrenzt nutzbar. Die Wide-Char-API sollte nach Möglichkeit verwendet werden.
Geändert in Version 3.3: Operationen in diesem Modul lösen nun OSError aus, wo zuvor IOError ausgelöst wurde.
Dateioperationen¶
- msvcrt.locking(fd, mode, nbytes)¶
Sperrt einen Teil einer Datei basierend auf dem Dateideskriptor fd aus der C-Laufzeit. Löst bei einem Fehler
OSErroraus. Der gesperrte Bereich der Datei erstreckt sich von der aktuellen Dateiposition über nbytes Bytes und kann über das Ende der Datei hinausgehen. mode muss eine der unten aufgeführtenLK_*Konstanten sein. Mehrere Bereiche in einer Datei können gleichzeitig gesperrt werden, dürfen sich aber nicht überschneiden. Benachbarte Bereiche werden nicht zusammengeführt; sie müssen einzeln entsperrt werden.Löst ein Audit-Ereignis
msvcrt.lockingmit den Argumentenfd,mode,nbytesaus.
- msvcrt.LK_LOCK¶
- msvcrt.LK_RLCK¶
Sperrt die angegebenen Bytes. Wenn die Bytes nicht gesperrt werden können, versucht das Programm sofort nach 1 Sekunde erneut. Wenn die Bytes nach 10 Versuchen nicht gesperrt werden können, wird
OSErrorausgelöst.
- msvcrt.LK_NBLCK¶
- msvcrt.LK_NBRLCK¶
Sperrt die angegebenen Bytes. Wenn die Bytes nicht gesperrt werden können, wird
OSErrorausgelöst.
- msvcrt.LK_UNLCK¶
Entsperrt die angegebenen Bytes, die zuvor gesperrt worden sein müssen.
- msvcrt.setmode(fd, flags)¶
Legt den Zeilenende-Übersetzungsmodus für den Dateideskriptor fd fest. Um ihn in den Textmodus zu versetzen, sollte flags
os.O_TEXTsein; für den Binärmodus sollte esos.O_BINARYsein.
- msvcrt.open_osfhandle(handle, flags)¶
Erstellt einen C-Laufzeit-Dateideskriptor aus dem Dateihandle handle. Der Parameter flags sollte ein bitweises ODER von
os.O_APPEND,os.O_RDONLY,os.O_TEXTundos.O_NOINHERITsein. Der zurückgegebene Dateideskriptor kann als Parameter anos.fdopen()übergeben werden, um ein Datei-Objekt zu erstellen.Der Dateideskriptor ist standardmäßig vererbbar. Übergeben Sie das Flag
os.O_NOINHERIT, um ihn nicht vererbbar zu machen.Löst ein Audit-Ereignis
msvcrt.open_osfhandlemit den Argumentenhandle,flagsaus.
- msvcrt.get_osfhandle(fd)¶
Gibt das Dateihandle für den Dateideskriptor fd zurück. Löst
OSErroraus, wenn fd nicht erkannt wird.Löst ein Audit-Ereignis
msvcrt.get_osfhandlemit dem Argumentfdaus.
Konsolen-I/O¶
- msvcrt.kbhit()¶
Gibt einen Nicht-Null-Wert zurück, wenn ein Tastendruck zum Lesen bereitsteht. Andernfalls wird 0 zurückgegeben.
- msvcrt.getch()¶
Liest einen Tastendruck und gibt das resultierende Zeichen als Byte-String zurück. Nichts wird auf der Konsole ausgegeben (echoed). Dieser Aufruf blockiert, wenn noch kein Tastendruck verfügbar ist, wartet aber nicht auf die Eingabetaste Enter. Wenn die gedrückte Taste eine spezielle Funktionstaste war, gibt dies
'\000'oder'\xe0'zurück; der nächste Aufruf gibt den Tastencode zurück. Der Tastendruck Strg-C kann mit dieser Funktion nicht gelesen werden.
- msvcrt.getche()¶
Ähnlich wie
getch(), aber der Tastendruck wird ausgegeben (echoed), wenn er ein druckbares Zeichen darstellt.
- msvcrt.putch(char)¶
Gibt den Byte-String char ohne Pufferung an die Konsole aus.
Weitere Funktionen¶
- msvcrt.heapmin()¶
Erzwingt, dass der
malloc()-Heap sich selbst bereinigt und ungenutzte Blöcke an das Betriebssystem zurückgibt. Bei einem Fehler wirdOSErrorausgelöst.
- msvcrt.set_error_mode(mode)¶
Ändert den Ort, an den die C-Laufzeitumgebung eine Fehlermeldung für einen Fehler schreibt, der das Programm beenden könnte. mode muss eine der unten aufgeführten
OUT_*Konstanten oderREPORT_ERRMODEsein. Gibt die alte Einstellung oder -1 zurück, wenn ein Fehler auftritt. Nur verfügbar in Debug-Build von Python.
- msvcrt.OUT_TO_DEFAULT¶
Fehlerausgabe wird durch den App-Typ bestimmt. Nur verfügbar in Debug-Build von Python.
- msvcrt.OUT_TO_STDERR¶
Fehlerausgabe ist Standardfehler. Nur verfügbar in Debug-Build von Python.
- msvcrt.OUT_TO_MSGBOX¶
Fehlerausgabe ist eine Meldungsbox. Nur verfügbar in Debug-Build von Python.
- msvcrt.REPORT_ERRMODE¶
Meldet den aktuellen Fehlermoduswert. Nur verfügbar in Debug-Build von Python.
- msvcrt.CrtSetReportMode(type, mode)¶
Legt die Ziel- oder Ziele für einen bestimmten Berichtstyp fest, der von
_CrtDbgReport()in der MS VC++ Laufzeitumgebung generiert wird. type muss eine der unten aufgeführtenCRT_*Konstanten sein. mode muss eine der unten aufgeführtenCRTDBG_*Konstanten sein. Nur verfügbar in Debug-Build von Python.
- msvcrt.CrtSetReportFile(type, file)¶
Nachdem Sie
CrtSetReportMode()verwendet haben, umCRTDBG_MODE_FILEfestzulegen, können Sie das Dateihandle angeben, das den Nachrichtentext empfangen soll. type muss eine der unten aufgeführtenCRT_*Konstanten sein. file sollte das von Ihnen angegebene Dateihandle sein. Nur verfügbar in Debug-Build von Python.
- msvcrt.CRT_WARN¶
Warnungen, Meldungen und Informationen, die keine sofortige Aufmerksamkeit erfordern.
- msvcrt.CRT_ERROR¶
Fehler, nicht behebbarer Probleme und Angelegenheiten, die sofortige Aufmerksamkeit erfordern.
- msvcrt.CRT_ASSERT¶
Fehlgeschlagene Assertionen.
- msvcrt.CRTDBG_MODE_DEBUG¶
Schreibt die Meldung in das Ausgabefenster des Debuggers.
- msvcrt.CRTDBG_MODE_FILE¶
Schreibt die Meldung in ein vom Benutzer bereitgestelltes Dateihandle.
CrtSetReportFile()sollte aufgerufen werden, um die spezifische Datei oder den Stream als Ziel zu definieren.
- msvcrt.CRTDBG_MODE_WNDW¶
Erstellt eine Meldungsbox, um die Meldung zusammen mit den Schaltflächen
Abort,RetryundIgnoreanzuzeigen.
- msvcrt.CRTDBG_REPORT_MODE¶
Gibt den aktuellen mode für den angegebenen type zurück.
- msvcrt.CRT_ASSEMBLY_VERSION¶
Die CRT-Assembly-Version aus der Headerdatei
crtassem.h.
- msvcrt.VC_ASSEMBLY_PUBLICKEYTOKEN¶
Der öffentliche Schlüssel-Token der VC-Assembly aus der Headerdatei
crtassem.h.
- msvcrt.LIBRARIES_ASSEMBLY_NAME_PREFIX¶
Das Präfix des Namens der Bibliotheks-Assembly aus der Headerdatei
crtassem.h.