Windows2003-3790/windows/published/conroute.w
2020-09-30 16:53:55 +02:00

112 lines
2.2 KiB
OpenEdge ABL

/*++
Copyright (c) 1991-1998 Microsoft Corporation
Module Name:
conroute.h
Abstract:
This include file contains all the type and constant definitions that are
shared by the BASE and CONSOLE components of the Windows Subsystem.
Author:
Therese Stowell (thereses) 3-Jan-1991
Revision History:
--*/
//
// These bits are always on for console handles and are used for routing
// by windows.
//
#define CONSOLE_HANDLE_SIGNATURE 0x00000003
#define CONSOLE_HANDLE_NEVERSET 0x10000000
#define CONSOLE_HANDLE_MASK (CONSOLE_HANDLE_SIGNATURE | CONSOLE_HANDLE_NEVERSET)
#define CONSOLE_HANDLE(HANDLE) (((ULONG_PTR)(HANDLE) & CONSOLE_HANDLE_MASK) == CONSOLE_HANDLE_SIGNATURE)
#define CONSOLE_DETACHED_PROCESS ((HANDLE)-1)
#define CONSOLE_NEW_CONSOLE ((HANDLE)-2)
#define CONSOLE_CREATE_NO_WINDOW ((HANDLE)-3)
//
// These are flags stored in PEB::ProcessParameters::ConsoleFlags.
//
#define CONSOLE_IGNORE_CTRL_C 0x1
//
// These strings are used to open console input or output.
//
#define CONSOLE_INPUT_STRING L"CONIN$"
#define CONSOLE_OUTPUT_STRING L"CONOUT$"
#define CONSOLE_GENERIC L"CON"
//
// this string is used to call RegisterWindowMessage to get
// progman's handle.
//
#define CONSOLE_PROGMAN_HANDLE_MESSAGE "ConsoleProgmanHandle"
//
// stream API definitions. these API are only supposed to be used by
// subsystems (i.e. OpenFile routes to OpenConsoleW).
//
HANDLE
APIENTRY
OpenConsoleW(
IN LPWSTR lpConsoleDevice,
IN DWORD dwDesiredAccess,
IN BOOL bInheritHandle,
IN DWORD dwShareMode
);
HANDLE
APIENTRY
DuplicateConsoleHandle(
IN HANDLE hSourceHandle,
IN DWORD dwDesiredAccess,
IN BOOL bInheritHandle,
IN DWORD dwOptions
);
BOOL
APIENTRY
GetConsoleHandleInformation(
IN HANDLE hObject,
OUT LPDWORD lpdwFlags
);
BOOL
APIENTRY
SetConsoleHandleInformation(
IN HANDLE hObject,
IN DWORD dwMask,
IN DWORD dwFlags
);
BOOL
APIENTRY
CloseConsoleHandle(
IN HANDLE hConsole
);
BOOL
APIENTRY
VerifyConsoleIoHandle(
IN HANDLE hIoHandle
);
HANDLE
APIENTRY
GetConsoleInputWaitHandle( VOID );