Annotation of mstools/h/wincon.h, revision 1.1.1.3

1.1       root        1: /*++ BUILD Version: 0002    // Increment this if a change has global effects
                      2: 
                      3: Copyright (c) 1989  Microsoft Corporation
                      4: 
                      5: Module Name:
                      6: 
1.1.1.2   root        7:     wincon.x
1.1       root        8: 
                      9: Abstract:
                     10: 
                     11:     This module contains the public data structures, data types,
                     12:     and procedures exported by the NT console subsystem.
                     13: 
                     14: Created:
                     15: 
                     16:     26-Oct-1990
                     17: 
                     18: Revision History:
                     19: 
                     20: --*/
                     21: 
                     22: #ifndef _WINCON_
                     23: #define _WINCON_
                     24: 
                     25: typedef struct _COORD {
                     26:     SHORT X;
                     27:     SHORT Y;
                     28: } COORD, *PCOORD;
                     29: 
                     30: typedef struct _SMALL_RECT {
                     31:     SHORT Left;
                     32:     SHORT Top;
                     33:     SHORT Right;
                     34:     SHORT Bottom;
                     35: } SMALL_RECT, *PSMALL_RECT;
                     36: 
                     37: typedef struct _KEY_EVENT_RECORD {
                     38:     BOOL bKeyDown;
                     39:     WORD wRepeatCount;
                     40:     WORD wVirtualKeyCode;
                     41:     WORD wVirtualScanCode;
                     42:     union {
                     43:         WCHAR UnicodeChar;
                     44:         CHAR   AsciiChar;
                     45:     } uChar;
                     46:     DWORD dwControlKeyState;
                     47: } KEY_EVENT_RECORD, *PKEY_EVENT_RECORD;
                     48: 
                     49: //
                     50: // ControlKeyState flags
                     51: //
                     52: 
                     53: #define RIGHT_ALT_PRESSED     0x0001 // the right alt key is pressed.
                     54: #define LEFT_ALT_PRESSED      0x0002 // the left alt key is pressed.
                     55: #define RIGHT_CTRL_PRESSED    0x0004 // the right ctrl key is pressed.
                     56: #define LEFT_CTRL_PRESSED     0x0008 // the left ctrl key is pressed.
                     57: #define SHIFT_PRESSED         0x0010 // the shift key is pressed.
                     58: #define NUMLOCK_ON            0x0020 // the numlock light is on.
                     59: #define SCROLLLOCK_ON         0x0040 // the scrolllock light is on.
                     60: #define CAPSLOCK_ON           0x0080 // the capslock light is on.
                     61: #define ENHANCED_KEY          0x0100 // the key is enhanced.
                     62: 
                     63: typedef struct _MOUSE_EVENT_RECORD {
                     64:     COORD dwMousePosition;
                     65:     DWORD dwButtonState;
                     66:     DWORD dwControlKeyState;
                     67:     DWORD dwEventFlags;
                     68: } MOUSE_EVENT_RECORD, *PMOUSE_EVENT_RECORD;
                     69: 
                     70: //
                     71: // ButtonState flags
                     72: //
                     73: 
                     74: #define FROM_LEFT_1ST_BUTTON_PRESSED    0x0001
                     75: #define RIGHTMOST_BUTTON_PRESSED        0x0002
                     76: #define FROM_LEFT_2ND_BUTTON_PRESSED    0x0004
                     77: #define FROM_LEFT_3RD_BUTTON_PRESSED    0x0008
                     78: #define FROM_LEFT_4TH_BUTTON_PRESSED    0x0010
                     79: 
                     80: //
                     81: // EventFlags
                     82: //
                     83: 
                     84: #define MOUSE_MOVED   0x0001
                     85: #define DOUBLE_CLICK  0x0002
                     86: 
                     87: typedef struct _WINDOW_BUFFER_SIZE_RECORD {
                     88:     COORD dwSize;
                     89: } WINDOW_BUFFER_SIZE_RECORD, *PWINDOW_BUFFER_SIZE_RECORD;
                     90: 
1.1.1.2   root       91: typedef struct _MENU_EVENT_RECORD {
                     92:     UINT dwCommandId;
                     93: } MENU_EVENT_RECORD, *PMENU_EVENT_RECORD;
                     94: 
                     95: typedef struct _FOCUS_EVENT_RECORD {
                     96:     BOOL bSetFocus;
                     97: } FOCUS_EVENT_RECORD, *PFOCUS_EVENT_RECORD;
                     98: 
1.1       root       99: typedef struct _INPUT_RECORD {
                    100:     WORD EventType;
                    101:     union {
                    102:         KEY_EVENT_RECORD KeyEvent;
                    103:         MOUSE_EVENT_RECORD MouseEvent;
                    104:         WINDOW_BUFFER_SIZE_RECORD WindowBufferSizeEvent;
1.1.1.2   root      105:         MENU_EVENT_RECORD MenuEvent;
                    106:         FOCUS_EVENT_RECORD FocusEvent;
1.1       root      107:     } Event;
                    108: } INPUT_RECORD, *PINPUT_RECORD;
                    109: 
                    110: //
                    111: //  EventType flags:
                    112: //
                    113: 
                    114: #define KEY_EVENT         0x0001 // Event contains key event record
                    115: #define MOUSE_EVENT       0x0002 // Event contains mouse event record
                    116: #define WINDOW_BUFFER_SIZE_EVENT 0x0004 // Event contains window change event record
1.1.1.2   root      117: #define MENU_EVENT 0x0008 // Event contains menu event record
                    118: #define FOCUS_EVENT 0x0010 // event contains focus change
1.1       root      119: 
                    120: typedef struct _CHAR_INFO {
                    121:     union {
                    122:         WCHAR UnicodeChar;
                    123:         CHAR   AsciiChar;
                    124:     } Char;
                    125:     WORD Attributes;
                    126: } CHAR_INFO, *PCHAR_INFO;
                    127: 
                    128: //
                    129: // Attributes flags:
                    130: //
                    131: 
                    132: #define FOREGROUND_BLUE      0x0001 // text color contains blue.
                    133: #define FOREGROUND_GREEN     0x0002 // text color contains green.
                    134: #define FOREGROUND_RED       0x0004 // text color contains red.
                    135: #define FOREGROUND_INTENSITY 0x0008 // text color is intensified.
                    136: #define BACKGROUND_BLUE      0x0010 // background color contains blue.
                    137: #define BACKGROUND_GREEN     0x0020 // background color contains green.
                    138: #define BACKGROUND_RED       0x0040 // background color contains red.
                    139: #define BACKGROUND_INTENSITY 0x0080 // background color is intensified.
                    140: 
                    141: 
                    142: typedef struct _CONSOLE_SCREEN_BUFFER_INFO {
                    143:     COORD dwSize;
                    144:     COORD dwCursorPosition;
                    145:     WORD  wAttributes;
                    146:     SMALL_RECT srWindow;
                    147:     COORD dwMaximumWindowSize;
                    148: } CONSOLE_SCREEN_BUFFER_INFO, *PCONSOLE_SCREEN_BUFFER_INFO;
                    149: 
                    150: typedef struct _CONSOLE_CURSOR_INFO {
                    151:     DWORD  dwSize;
                    152:     BOOL   bVisible;
                    153: } CONSOLE_CURSOR_INFO, *PCONSOLE_CURSOR_INFO;
                    154: 
                    155: //
                    156: // typedef for ctrl-c handler routines
                    157: //
                    158: 
                    159: typedef
                    160: BOOL
1.1.1.3 ! root      161: (WINAPI *PHANDLER_ROUTINE)(
1.1.1.2   root      162:     DWORD CtrlType
1.1       root      163:     );
                    164: 
1.1.1.3 ! root      165: #define CTRL_C_EVENT        0
        !           166: #define CTRL_BREAK_EVENT    1
        !           167: #define CTRL_CLOSE_EVENT    2
        !           168: // 3 is reserved!
        !           169: // 4 is reserved!
        !           170: #define CTRL_LOGOFF_EVENT   5
        !           171: #define CTRL_SHUTDOWN_EVENT 6
1.1       root      172: 
                    173: //
                    174: //  Input Mode flags:
                    175: //
                    176: 
                    177: #define ENABLE_PROCESSED_INPUT 0x0001
                    178: #define ENABLE_LINE_INPUT      0x0002
                    179: #define ENABLE_ECHO_INPUT      0x0004
                    180: #define ENABLE_WINDOW_INPUT    0x0008
                    181: #define ENABLE_MOUSE_INPUT     0x0010
                    182: 
                    183: //
                    184: // Output Mode flags:
                    185: //
                    186: 
                    187: #define ENABLE_PROCESSED_OUTPUT  0x0001
                    188: #define ENABLE_WRAP_AT_EOL_OUTPUT  0x0002
                    189: 
                    190: //
                    191: // direct API definitions.
                    192: //
                    193: 
                    194: BOOL
1.1.1.3 ! root      195: WINAPI
1.1.1.2   root      196: PeekConsoleInputA(
                    197:     HANDLE hConsoleInput,
                    198:     PINPUT_RECORD lpBuffer,
                    199:     DWORD nLength,
                    200:     LPDWORD lpNumberOfEventsRead
                    201:     );
                    202: BOOL
1.1.1.3 ! root      203: WINAPI
1.1.1.2   root      204: PeekConsoleInputW(
1.1       root      205:     HANDLE hConsoleInput,
                    206:     PINPUT_RECORD lpBuffer,
                    207:     DWORD nLength,
                    208:     LPDWORD lpNumberOfEventsRead
                    209:     );
1.1.1.2   root      210: #ifdef UNICODE
                    211: #define PeekConsoleInput PeekConsoleInputW
                    212: #else
                    213: #define PeekConsoleInput PeekConsoleInputA
                    214: #endif // !UNICODE
1.1       root      215: 
                    216: BOOL
1.1.1.3 ! root      217: WINAPI
1.1.1.2   root      218: ReadConsoleInputA(
1.1       root      219:     HANDLE hConsoleInput,
                    220:     PINPUT_RECORD lpBuffer,
                    221:     DWORD nLength,
                    222:     LPDWORD lpNumberOfEventsRead
                    223:     );
1.1.1.2   root      224: BOOL
1.1.1.3 ! root      225: WINAPI
1.1.1.2   root      226: ReadConsoleInputW(
                    227:     HANDLE hConsoleInput,
                    228:     PINPUT_RECORD lpBuffer,
                    229:     DWORD nLength,
                    230:     LPDWORD lpNumberOfEventsRead
                    231:     );
                    232: #ifdef UNICODE
                    233: #define ReadConsoleInput ReadConsoleInputW
                    234: #else
                    235: #define ReadConsoleInput ReadConsoleInputA
                    236: #endif // !UNICODE
1.1       root      237: 
                    238: BOOL
1.1.1.3 ! root      239: WINAPI
1.1.1.2   root      240: WriteConsoleInputA(
1.1       root      241:     HANDLE hConsoleInput,
                    242:     PINPUT_RECORD lpBuffer,
                    243:     DWORD nLength,
                    244:     LPDWORD lpNumberOfEventsWritten
                    245:     );
1.1.1.2   root      246: BOOL
1.1.1.3 ! root      247: WINAPI
1.1.1.2   root      248: WriteConsoleInputW(
                    249:     HANDLE hConsoleInput,
                    250:     PINPUT_RECORD lpBuffer,
                    251:     DWORD nLength,
                    252:     LPDWORD lpNumberOfEventsWritten
                    253:     );
                    254: #ifdef UNICODE
                    255: #define WriteConsoleInput WriteConsoleInputW
                    256: #else
                    257: #define WriteConsoleInput WriteConsoleInputA
                    258: #endif // !UNICODE
1.1       root      259: 
                    260: BOOL
1.1.1.3 ! root      261: WINAPI
1.1.1.2   root      262: ReadConsoleOutputA(
1.1       root      263:     HANDLE hConsoleOutput,
                    264:     PCHAR_INFO lpBuffer,
                    265:     COORD dwBufferSize,
                    266:     COORD dwBufferCoord,
                    267:     PSMALL_RECT lpReadRegion
                    268:     );
1.1.1.2   root      269: BOOL
1.1.1.3 ! root      270: WINAPI
1.1.1.2   root      271: ReadConsoleOutputW(
                    272:     HANDLE hConsoleOutput,
                    273:     PCHAR_INFO lpBuffer,
                    274:     COORD dwBufferSize,
                    275:     COORD dwBufferCoord,
                    276:     PSMALL_RECT lpReadRegion
                    277:     );
                    278: #ifdef UNICODE
                    279: #define ReadConsoleOutput ReadConsoleOutputW
                    280: #else
                    281: #define ReadConsoleOutput ReadConsoleOutputA
                    282: #endif // !UNICODE
1.1       root      283: 
                    284: BOOL
1.1.1.3 ! root      285: WINAPI
1.1.1.2   root      286: WriteConsoleOutputA(
                    287:     HANDLE hConsoleOutput,
                    288:     PCHAR_INFO lpBuffer,
                    289:     COORD dwBufferSize,
                    290:     COORD dwBufferCoord,
                    291:     PSMALL_RECT lpWriteRegion
                    292:     );
                    293: BOOL
1.1.1.3 ! root      294: WINAPI
1.1.1.2   root      295: WriteConsoleOutputW(
1.1       root      296:     HANDLE hConsoleOutput,
                    297:     PCHAR_INFO lpBuffer,
                    298:     COORD dwBufferSize,
                    299:     COORD dwBufferCoord,
                    300:     PSMALL_RECT lpWriteRegion
                    301:     );
1.1.1.2   root      302: #ifdef UNICODE
                    303: #define WriteConsoleOutput WriteConsoleOutputW
                    304: #else
                    305: #define WriteConsoleOutput WriteConsoleOutputA
                    306: #endif // !UNICODE
1.1       root      307: 
                    308: BOOL
1.1.1.3 ! root      309: WINAPI
1.1.1.2   root      310: ReadConsoleOutputCharacterA(
1.1       root      311:     HANDLE hConsoleOutput,
                    312:     LPSTR lpCharacter,
                    313:     DWORD nLength,
                    314:     COORD dwReadCoord,
                    315:     LPDWORD lpNumberOfCharsRead
                    316:     );
1.1.1.2   root      317: BOOL
1.1.1.3 ! root      318: WINAPI
1.1.1.2   root      319: ReadConsoleOutputCharacterW(
                    320:     HANDLE hConsoleOutput,
                    321:     LPWSTR lpCharacter,
                    322:     DWORD nLength,
                    323:     COORD dwReadCoord,
                    324:     LPDWORD lpNumberOfCharsRead
                    325:     );
                    326: #ifdef UNICODE
                    327: #define ReadConsoleOutputCharacter ReadConsoleOutputCharacterW
                    328: #else
                    329: #define ReadConsoleOutputCharacter ReadConsoleOutputCharacterA
                    330: #endif // !UNICODE
1.1       root      331: 
                    332: BOOL
1.1.1.3 ! root      333: WINAPI
1.1       root      334: ReadConsoleOutputAttribute(
                    335:     HANDLE hConsoleOutput,
                    336:     LPWORD lpAttribute,
                    337:     DWORD nLength,
                    338:     COORD dwReadCoord,
                    339:     LPDWORD lpNumberOfAttrsRead
                    340:     );
                    341: 
                    342: BOOL
1.1.1.3 ! root      343: WINAPI
1.1.1.2   root      344: WriteConsoleOutputCharacterA(
1.1       root      345:     HANDLE hConsoleOutput,
                    346:     LPSTR lpCharacter,
                    347:     DWORD nLength,
                    348:     COORD dwWriteCoord,
                    349:     LPDWORD lpNumberOfCharsWritten
                    350:     );
1.1.1.2   root      351: BOOL
1.1.1.3 ! root      352: WINAPI
1.1.1.2   root      353: WriteConsoleOutputCharacterW(
                    354:     HANDLE hConsoleOutput,
                    355:     LPWSTR lpCharacter,
                    356:     DWORD nLength,
                    357:     COORD dwWriteCoord,
                    358:     LPDWORD lpNumberOfCharsWritten
                    359:     );
                    360: #ifdef UNICODE
                    361: #define WriteConsoleOutputCharacter WriteConsoleOutputCharacterW
                    362: #else
                    363: #define WriteConsoleOutputCharacter WriteConsoleOutputCharacterA
                    364: #endif // !UNICODE
1.1       root      365: 
                    366: BOOL
1.1.1.3 ! root      367: WINAPI
1.1       root      368: WriteConsoleOutputAttribute(
                    369:     HANDLE hConsoleOutput,
                    370:     LPWORD lpAttribute,
                    371:     DWORD nLength,
                    372:     COORD dwWriteCoord,
                    373:     LPDWORD lpNumberOfAttrsWritten
                    374:     );
                    375: 
                    376: BOOL
1.1.1.3 ! root      377: WINAPI
1.1.1.2   root      378: FillConsoleOutputCharacterA(
                    379:     HANDLE hConsoleOutput,
                    380:     CHAR  cCharacter,
                    381:     DWORD  nLength,
                    382:     COORD  dwWriteCoord,
                    383:     LPDWORD lpNumberOfCharsWritten
                    384:     );
                    385: BOOL
1.1.1.3 ! root      386: WINAPI
1.1.1.2   root      387: FillConsoleOutputCharacterW(
1.1       root      388:     HANDLE hConsoleOutput,
1.1.1.2   root      389:     WCHAR  cCharacter,
1.1       root      390:     DWORD  nLength,
                    391:     COORD  dwWriteCoord,
                    392:     LPDWORD lpNumberOfCharsWritten
                    393:     );
1.1.1.2   root      394: #ifdef UNICODE
                    395: #define FillConsoleOutputCharacter FillConsoleOutputCharacterW
                    396: #else
                    397: #define FillConsoleOutputCharacter FillConsoleOutputCharacterA
                    398: #endif // !UNICODE
1.1       root      399: 
                    400: BOOL
1.1.1.3 ! root      401: WINAPI
1.1       root      402: FillConsoleOutputAttribute(
                    403:     HANDLE hConsoleOutput,
                    404:     WORD   wAttribute,
                    405:     DWORD  nLength,
                    406:     COORD  dwWriteCoord,
                    407:     LPDWORD lpNumberOfAttrsWritten
                    408:     );
                    409: 
                    410: BOOL
1.1.1.3 ! root      411: WINAPI
1.1       root      412: GetConsoleMode(
                    413:     HANDLE hConsoleHandle,
                    414:     LPDWORD lpMode
                    415:     );
                    416: 
                    417: BOOL
1.1.1.3 ! root      418: WINAPI
1.1       root      419: GetNumberOfConsoleInputEvents(
                    420:     HANDLE hConsoleInput,
                    421:     LPDWORD lpNumberOfEvents
                    422:     );
                    423: 
                    424: BOOL
1.1.1.3 ! root      425: WINAPI
1.1       root      426: GetConsoleScreenBufferInfo(
                    427:     HANDLE hConsoleOutput,
                    428:     PCONSOLE_SCREEN_BUFFER_INFO lpConsoleScreenBufferInfo
                    429:     );
                    430: 
                    431: COORD
1.1.1.3 ! root      432: WINAPI
1.1       root      433: GetLargestConsoleWindowSize(
                    434:     HANDLE hConsoleOutput
                    435:     );
                    436: 
                    437: BOOL
1.1.1.3 ! root      438: WINAPI
1.1       root      439: GetConsoleCursorInfo(
                    440:     HANDLE hConsoleOutput,
                    441:     PCONSOLE_CURSOR_INFO lpConsoleCursorInfo
                    442:     );
                    443: 
                    444: BOOL
1.1.1.3 ! root      445: WINAPI
1.1       root      446: GetNumberOfConsoleMouseButtons(
                    447:     LPDWORD lpNumberOfMouseButtons
                    448:     );
                    449: 
                    450: BOOL
1.1.1.3 ! root      451: WINAPI
1.1       root      452: SetConsoleMode(
                    453:     HANDLE hConsoleHandle,
                    454:     DWORD dwMode
                    455:     );
                    456: 
                    457: BOOL
1.1.1.3 ! root      458: WINAPI
1.1       root      459: SetConsoleActiveScreenBuffer(
                    460:     HANDLE hConsoleOutput
                    461:     );
                    462: 
                    463: BOOL
1.1.1.3 ! root      464: WINAPI
1.1       root      465: FlushConsoleInputBuffer(
                    466:     HANDLE hConsoleInput
                    467:     );
                    468: 
                    469: BOOL
1.1.1.3 ! root      470: WINAPI
1.1       root      471: SetConsoleScreenBufferSize(
                    472:     HANDLE hConsoleOutput,
                    473:     COORD dwSize
                    474:     );
                    475: 
                    476: BOOL
1.1.1.3 ! root      477: WINAPI
1.1       root      478: SetConsoleCursorPosition(
                    479:     HANDLE hConsoleOutput,
                    480:     COORD dwCursorPosition
                    481:     );
                    482: 
                    483: BOOL
1.1.1.3 ! root      484: WINAPI
1.1       root      485: SetConsoleCursorInfo(
                    486:     HANDLE hConsoleOutput,
                    487:     PCONSOLE_CURSOR_INFO lpConsoleCursorInfo
                    488:     );
                    489: 
                    490: BOOL
1.1.1.3 ! root      491: WINAPI
1.1.1.2   root      492: ScrollConsoleScreenBufferA(
                    493:     HANDLE hConsoleOutput,
                    494:     PSMALL_RECT lpScrollRectangle,
                    495:     PSMALL_RECT lpClipRectangle,
                    496:     COORD dwDestinationOrigin,
                    497:     PCHAR_INFO lpFill
                    498:     );
                    499: BOOL
1.1.1.3 ! root      500: WINAPI
1.1.1.2   root      501: ScrollConsoleScreenBufferW(
1.1       root      502:     HANDLE hConsoleOutput,
                    503:     PSMALL_RECT lpScrollRectangle,
                    504:     PSMALL_RECT lpClipRectangle,
                    505:     COORD dwDestinationOrigin,
                    506:     PCHAR_INFO lpFill
                    507:     );
1.1.1.2   root      508: #ifdef UNICODE
                    509: #define ScrollConsoleScreenBuffer ScrollConsoleScreenBufferW
                    510: #else
                    511: #define ScrollConsoleScreenBuffer ScrollConsoleScreenBufferA
                    512: #endif // !UNICODE
1.1       root      513: 
                    514: BOOL
1.1.1.3 ! root      515: WINAPI
1.1       root      516: SetConsoleWindowInfo(
                    517:     HANDLE hConsoleOutput,
                    518:     BOOL bAbsolute,
                    519:     PSMALL_RECT lpConsoleWindow
                    520:     );
                    521: 
                    522: BOOL
1.1.1.3 ! root      523: WINAPI
1.1       root      524: SetConsoleTextAttribute(
                    525:     HANDLE hConsoleOutput,
                    526:     WORD wAttributes
                    527:     );
                    528: 
                    529: BOOL
1.1.1.3 ! root      530: WINAPI
1.1       root      531: SetConsoleCtrlHandler(
1.1.1.2   root      532:     PHANDLER_ROUTINE HandlerRoutine,
                    533:     BOOL Add
1.1       root      534:     );
1.1.1.2   root      535: 
1.1       root      536: BOOL
1.1.1.3 ! root      537: WINAPI
        !           538: GenerateConsoleCtrlEvent(
        !           539:     DWORD dwCtrlEvent,
        !           540:     DWORD dwProcessGroupId
        !           541:     );
        !           542: 
        !           543: BOOL
        !           544: WINAPI
1.1       root      545: AllocConsole( VOID );
                    546: 
                    547: BOOL
1.1.1.3 ! root      548: WINAPI
1.1       root      549: FreeConsole( VOID );
                    550: 
                    551: 
                    552: DWORD
1.1.1.3 ! root      553: WINAPI
1.1.1.2   root      554: GetConsoleTitleA(
1.1       root      555:     LPSTR lpConsoleTitle,
                    556:     DWORD nSize
                    557:     );
1.1.1.2   root      558: DWORD
1.1.1.3 ! root      559: WINAPI
1.1.1.2   root      560: GetConsoleTitleW(
                    561:     LPWSTR lpConsoleTitle,
                    562:     DWORD nSize
                    563:     );
                    564: #ifdef UNICODE
                    565: #define GetConsoleTitle GetConsoleTitleW
                    566: #else
                    567: #define GetConsoleTitle GetConsoleTitleA
                    568: #endif // !UNICODE
1.1       root      569: 
                    570: BOOL
1.1.1.3 ! root      571: WINAPI
1.1.1.2   root      572: SetConsoleTitleA(
1.1       root      573:     LPSTR lpConsoleTitle
                    574:     );
1.1.1.2   root      575: BOOL
1.1.1.3 ! root      576: WINAPI
1.1.1.2   root      577: SetConsoleTitleW(
                    578:     LPWSTR lpConsoleTitle
                    579:     );
                    580: #ifdef UNICODE
                    581: #define SetConsoleTitle SetConsoleTitleW
                    582: #else
                    583: #define SetConsoleTitle SetConsoleTitleA
                    584: #endif // !UNICODE
                    585: 
                    586: BOOL
1.1.1.3 ! root      587: WINAPI
1.1.1.2   root      588: ReadConsoleA(
                    589:     HANDLE hConsoleInput,
                    590:     LPVOID lpBuffer,
                    591:     DWORD nNumberOfCharsToRead,
                    592:     LPDWORD lpNumberOfCharsRead,
                    593:     LPVOID lpReserved
                    594:     );
                    595: BOOL
1.1.1.3 ! root      596: WINAPI
1.1.1.2   root      597: ReadConsoleW(
                    598:     HANDLE hConsoleInput,
                    599:     LPVOID lpBuffer,
                    600:     DWORD nNumberOfCharsToRead,
                    601:     LPDWORD lpNumberOfCharsRead,
                    602:     LPVOID lpReserved
                    603:     );
                    604: #ifdef UNICODE
                    605: #define ReadConsole ReadConsoleW
                    606: #else
                    607: #define ReadConsole ReadConsoleA
                    608: #endif // !UNICODE
                    609: 
                    610: BOOL
1.1.1.3 ! root      611: WINAPI
1.1.1.2   root      612: WriteConsoleA(
                    613:     HANDLE hConsoleOutput,
                    614:     CONST VOID *lpBuffer,
                    615:     DWORD nNumberOfCharsToWrite,
                    616:     LPDWORD lpNumberOfCharsWritten,
                    617:     LPVOID lpReserved
                    618:     );
                    619: BOOL
1.1.1.3 ! root      620: WINAPI
1.1.1.2   root      621: WriteConsoleW(
                    622:     HANDLE hConsoleOutput,
                    623:     CONST VOID *lpBuffer,
                    624:     DWORD nNumberOfCharsToWrite,
                    625:     LPDWORD lpNumberOfCharsWritten,
                    626:     LPVOID lpReserved
                    627:     );
                    628: #ifdef UNICODE
                    629: #define WriteConsole WriteConsoleW
                    630: #else
                    631: #define WriteConsole WriteConsoleA
                    632: #endif // !UNICODE
1.1       root      633: 
                    634: #define CONSOLE_TEXTMODE_BUFFER  1
                    635: 
                    636: HANDLE
1.1.1.3 ! root      637: WINAPI
1.1       root      638: CreateConsoleScreenBuffer(
                    639:     DWORD dwDesiredAccess,
                    640:     DWORD dwShareMode,
                    641:     LPSECURITY_ATTRIBUTES lpSecurityAttributes,
1.1.1.2   root      642:     DWORD dwFlags,
                    643:     PVOID lpScreenBufferData
                    644:     );
                    645: 
                    646: UINT
1.1.1.3 ! root      647: WINAPI
1.1.1.2   root      648: GetConsoleCP( VOID );
                    649: 
                    650: BOOL
1.1.1.3 ! root      651: WINAPI
1.1.1.2   root      652: SetConsoleCP(
                    653:     UINT wCodePageID
                    654:     );
                    655: 
                    656: UINT
1.1.1.3 ! root      657: WINAPI
1.1.1.2   root      658: GetConsoleOutputCP( VOID );
                    659: 
                    660: BOOL
1.1.1.3 ! root      661: WINAPI
1.1.1.2   root      662: SetConsoleOutputCP(
                    663:     UINT wCodePageID
1.1       root      664:     );
                    665: 
                    666: #endif // _WINCON_

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.