"msvcrt" --- Useful routines from the MS VC++ runtime
*****************************************************

======================================================================

These functions provide access to some useful capabilities on Windows
platforms. Some higher-level modules use these functions to build the
Windows implementations of their services.  For example, the "getpass"
module uses this in the implementation of the "getpass()" function.

ここに挙げた関数の詳細なドキュメントについては、プラットフォーム API
ドキュメントで見つけることができます。

このモジュールは、通常版とワイド文字列版の両方のコンソールI/O APIを実
装しています。通常版の API は ASCII 文字列のためのもので、国際化アプリ
ケーションでは利用が制限されます。可能な限りワイド文字列版APIを利用す
るべきです。

バージョン 3.3 で変更: このモジュールの操作で以前は "IOError" が送出さ
れていたところで "OSError" が送出されるようになりました。


ファイル操作関連
================

msvcrt.locking(fd, mode, nbytes)

   Lock part of a file based on file descriptor *fd* from the C
   runtime.  Raises "OSError" on failure.  The locked region of the
   file extends from the current file position for *nbytes* bytes, and
   may continue beyond the end of the file.  *mode* must be one of the
   "LK_*" constants listed below. Multiple regions in a file may be
   locked at the same time, but may not overlap.  Adjacent regions are
   not merged; they must be unlocked individually.

   引数 "fd", "mode", "nbytes" を指定して 監査イベント
   "msvcrt.locking" を送出します。

msvcrt.LK_LOCK
msvcrt.LK_RLCK

   Locks the specified bytes. If the bytes cannot be locked, the
   program immediately tries again after 1 second.  If, after 10
   attempts, the bytes cannot be locked, "OSError" is raised.

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)

   Create a C runtime file descriptor from the file handle *handle*.
   The *flags* parameter should be a bitwise OR of "os.O_APPEND",
   "os.O_RDONLY", and "os.O_TEXT".  The returned file descriptor may
   be used as a parameter to "os.fdopen()" to create a file object.

   引数 "handle", "flags" を指定して 監査イベント
   "msvcrt.open_osfhandle" を送出します。

msvcrt.get_osfhandle(fd)

   Return the file handle for the file descriptor *fd*.  Raises
   "OSError" if *fd* is not recognized.

   引数 "fd" を指定して 監査イベント "msvcrt.get_osfhandle" を送出しま
   す。


コンソール I/O 関連
===================

msvcrt.kbhit()

   Return "True" if a keypress is waiting to be read.

msvcrt.getch()

   Read a keypress and return the resulting character as a byte
   string. Nothing is echoed to the console.  This call will block if
   a keypress is not already available, but will not wait for "Enter"
   to be pressed. If the pressed key was a special function key, this
   will return "'\000'" or "'\xe0'"; the next call will return the
   keycode. The "Control-C" keypress cannot be read with this
   function.

msvcrt.getwch()

   "getch()" のワイド文字列版。Unicode の値を返します。

msvcrt.getche()

   Similar to "getch()", but the keypress will be echoed if it
   represents a printable character.

msvcrt.getwche()

   "getche()" のワイド文字列版。Unicode の値を返します。

msvcrt.putch(char)

   バイト文字列 *char* をバッファリングを行わないでコンソールに出力し
   ます。

msvcrt.putwch(unicode_char)

   "putch()" のワイド文字列版。Unicode の値を引数に取ります。

msvcrt.ungetch(char)

   バイト文字列 *char* をコンソールバッファに "押し戻し (push back)"
   ます; これにより、押し戻された文字は "getch()" や "getche()" で次に
   読み出される文字になります。

msvcrt.ungetwch(unicode_char)

   "ungetch()" のワイド文字列版。Unicode の値を引数に取ります。


その多の関数
============

msvcrt.heapmin()

   Force the "malloc()" heap to clean itself up and return unused
   blocks to the operating system. On failure, this raises "OSError".

msvcrt.CRT_ASSEMBLY_VERSION

   The CRT Assembly version, from the "crtassem.h" header file.

msvcrt.VC_ASSEMBLY_PUBLICKEYTOKEN

   The VC Assembly public key token, from the "crtassem.h" header
   file.

msvcrt.LIBRARIES_ASSEMBLY_NAME_PREFIX

   The Libraries Assembly name prefix, from the "crtassem.h" header
   file.
