"msvcrt" --- MS VC++ ランタイムの有用なルーチン群
*************************************************

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

このモジュールの関数は、 Windows プラットフォームの便利な機能のいくつ
かに対するアクセス機構を提供しています。高レベルモジュールのいくつかは
、提供するサービスを Windows で実装するために、これらの関数を使ってい
ます。例えば、 "getpass" モジュールは関数 "getpass()" を実装するために
このモジュールの関数を使います。

ここに挙げた関数の詳細なドキュメントについては、プラットフォーム 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", "os.O_TEXT" and "os.O_NOINHERIT". The returned file
   descriptor may be used as a parameter to "os.fdopen()" to create a
   file object.

   The file descriptor is inheritable by default. Pass
   "os.O_NOINHERIT" flag to make it non inheritable.

   引数 "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()

   Returns a nonzero value if a keypress is waiting to be read.
   Otherwise, return 0.

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.set_error_mode(mode)

   Changes the location where the C runtime writes an error message
   for an error that might end the program. *mode* must be one of the
   "OUT_*" constants listed below  or "REPORT_ERRMODE". Returns the
   old setting or -1 if an error occurs. Only available in debug build
   of Python.

msvcrt.OUT_TO_DEFAULT

   Error sink is determined by the app's type. Only available in debug
   build of Python.

msvcrt.OUT_TO_STDERR

   Error sink is a standard error. Only available in debug build of
   Python.

msvcrt.OUT_TO_MSGBOX

   Error sink is a message box. Only available in debug build of
   Python.

msvcrt.REPORT_ERRMODE

   Report the current error mode value. Only available in debug build
   of Python.

msvcrt.CrtSetReportMode(type, mode)

   Specifies the destination or destinations for a specific report
   type generated by "_CrtDbgReport()" in the MS VC++ runtime. *type*
   must be one of the "CRT_*" constants listed below. *mode* must be
   one of the "CRTDBG_*" constants listed below. Only available in
   debug build of Python.

msvcrt.CrtSetReportFile(type, file)

   After you use "CrtSetReportMode()" to specify "CRTDBG_MODE_FILE",
   you can specify the file handle to receive the message text. *type*
   must be one of the "CRT_*" constants listed below. *file* should be
   the file handle your want specified. Only available in debug build
   of Python.

msvcrt.CRT_WARN

   Warnings, messages, and information that doesn't need immediate
   attention.

msvcrt.CRT_ERROR

   Errors, unrecoverable problems, and issues that require immediate
   attention.

msvcrt.CRT_ASSERT

   Assertion failures.

msvcrt.CRTDBG_MODE_DEBUG

   Writes the message to the debugger's output window.

msvcrt.CRTDBG_MODE_FILE

   Writes the message to a user-supplied file handle.
   "CrtSetReportFile()" should be called to define the specific file
   or stream to use as the destination.

msvcrt.CRTDBG_MODE_WNDW

   Creates a message box to display the message along with the
   "Abort", "Retry", and "Ignore" buttons.

msvcrt.CRTDBG_REPORT_MODE

   Returns current *mode* for the specified *type*.

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.
