symbian-qemu-0.9.1-12/python-2.6.1/Doc/library/msvcrt.rst
changeset 1 2fb8b9db1c86
equal deleted inserted replaced
0:ffa851df0825 1:2fb8b9db1c86
       
     1 
       
     2 :mod:`msvcrt` -- Useful routines from the MS VC++ runtime
       
     3 =========================================================
       
     4 
       
     5 .. module:: msvcrt
       
     6    :platform: Windows
       
     7    :synopsis: Miscellaneous useful routines from the MS VC++ runtime.
       
     8 .. sectionauthor:: Fred L. Drake, Jr. <fdrake@acm.org>
       
     9 
       
    10 
       
    11 These functions provide access to some useful capabilities on Windows platforms.
       
    12 Some higher-level modules use these functions to build the  Windows
       
    13 implementations of their services.  For example, the :mod:`getpass` module uses
       
    14 this in the implementation of the :func:`getpass` function.
       
    15 
       
    16 Further documentation on these functions can be found in the Platform API
       
    17 documentation.
       
    18 
       
    19 The module implements both the normal and wide char variants of the console I/O
       
    20 api. The normal API deals only with ASCII characters and is of limited use
       
    21 for internationalized applications. The wide char API should be used where 
       
    22 ever possible
       
    23 
       
    24 .. _msvcrt-files:
       
    25 
       
    26 File Operations
       
    27 ---------------
       
    28 
       
    29 
       
    30 .. function:: locking(fd, mode, nbytes)
       
    31 
       
    32    Lock part of a file based on file descriptor *fd* from the C runtime.  Raises
       
    33    :exc:`IOError` on failure.  The locked region of the file extends from the
       
    34    current file position for *nbytes* bytes, and may continue beyond the end of the
       
    35    file.  *mode* must be one of the :const:`LK_\*` constants listed below. Multiple
       
    36    regions in a file may be locked at the same time, but may not overlap.  Adjacent
       
    37    regions are not merged; they must be unlocked individually.
       
    38 
       
    39 
       
    40 .. data:: LK_LOCK
       
    41           LK_RLCK
       
    42 
       
    43    Locks the specified bytes. If the bytes cannot be locked, the program
       
    44    immediately tries again after 1 second.  If, after 10 attempts, the bytes cannot
       
    45    be locked, :exc:`IOError` is raised.
       
    46 
       
    47 
       
    48 .. data:: LK_NBLCK
       
    49           LK_NBRLCK
       
    50 
       
    51    Locks the specified bytes. If the bytes cannot be locked, :exc:`IOError` is
       
    52    raised.
       
    53 
       
    54 
       
    55 .. data:: LK_UNLCK
       
    56 
       
    57    Unlocks the specified bytes, which must have been previously locked.
       
    58 
       
    59 
       
    60 .. function:: setmode(fd, flags)
       
    61 
       
    62    Set the line-end translation mode for the file descriptor *fd*. To set it to
       
    63    text mode, *flags* should be :const:`os.O_TEXT`; for binary, it should be
       
    64    :const:`os.O_BINARY`.
       
    65 
       
    66 
       
    67 .. function:: open_osfhandle(handle, flags)
       
    68 
       
    69    Create a C runtime file descriptor from the file handle *handle*.  The *flags*
       
    70    parameter should be a bitwise OR of :const:`os.O_APPEND`, :const:`os.O_RDONLY`,
       
    71    and :const:`os.O_TEXT`.  The returned file descriptor may be used as a parameter
       
    72    to :func:`os.fdopen` to create a file object.
       
    73 
       
    74 
       
    75 .. function:: get_osfhandle(fd)
       
    76 
       
    77    Return the file handle for the file descriptor *fd*.  Raises :exc:`IOError` if
       
    78    *fd* is not recognized.
       
    79 
       
    80 
       
    81 .. _msvcrt-console:
       
    82 
       
    83 Console I/O
       
    84 -----------
       
    85 
       
    86 
       
    87 .. function:: kbhit()
       
    88 
       
    89    Return true if a keypress is waiting to be read.
       
    90 
       
    91 
       
    92 .. function:: getch()
       
    93 
       
    94    Read a keypress and return the resulting character.  Nothing is echoed to the
       
    95    console.  This call will block if a keypress is not already available, but will
       
    96    not wait for :kbd:`Enter` to be pressed. If the pressed key was a special
       
    97    function key, this will return ``'\000'`` or ``'\xe0'``; the next call will
       
    98    return the keycode.  The :kbd:`Control-C` keypress cannot be read with this
       
    99    function.
       
   100 
       
   101    
       
   102 .. function:: getwch()
       
   103 
       
   104    Wide char variant of :func:`getch`, returning a Unicode value.
       
   105    
       
   106    .. versionadded:: 2.6
       
   107    
       
   108 
       
   109 .. function:: getche()
       
   110 
       
   111    Similar to :func:`getch`, but the keypress will be echoed if it  represents a
       
   112    printable character.
       
   113 
       
   114 
       
   115 .. function:: getwche()
       
   116 
       
   117    Wide char variant of :func:`getche`, returning a Unicode value.
       
   118    
       
   119    .. versionadded:: 2.6
       
   120 
       
   121 
       
   122 .. function:: putch(char)
       
   123 
       
   124    Print the character *char* to the console without buffering.
       
   125 
       
   126    
       
   127 .. function:: putwch(unicode_char)
       
   128 
       
   129    Wide char variant of :func:`putch`, accepting a Unicode value.
       
   130    
       
   131    .. versionadded:: 2.6
       
   132    
       
   133 
       
   134 .. function:: ungetch(char)
       
   135 
       
   136    Cause the character *char* to be "pushed back" into the console buffer; it will
       
   137    be the next character read by :func:`getch` or :func:`getche`.
       
   138 
       
   139    
       
   140 .. function:: ungetwch(unicode_char)
       
   141 
       
   142    Wide char variant of :func:`ungetch`, accepting a Unicode value.
       
   143    
       
   144    .. versionadded:: 2.6
       
   145 
       
   146 
       
   147 .. _msvcrt-other:
       
   148 
       
   149 Other Functions
       
   150 ---------------
       
   151 
       
   152 
       
   153 .. function:: heapmin()
       
   154 
       
   155    Force the :cfunc:`malloc` heap to clean itself up and return unused blocks to
       
   156    the operating system.  This only works on Windows NT.  On failure, this raises
       
   157    :exc:`IOError`.
       
   158