xref: /reactos/dll/win32/kernel32/include/console.h (revision 9d3c3a75)
1 /*
2  * COPYRIGHT:       See COPYING in the top level directory
3  * PROJECT:         ReactOS System Libraries
4  * FILE:            dll/win32/kernel32/include/console.h
5  * PURPOSE:         Console API Client Definitions
6  * PROGRAMMERS:     Hermes Belusca-Maito (hermes.belusca@sfr.fr)
7  */
8 
9 #pragma once
10 
11 /* CONSTANTS ******************************************************************/
12 
13 #define HANDLE_DETACHED_PROCESS     (HANDLE)-1
14 #define HANDLE_CREATE_NEW_CONSOLE   (HANDLE)-2
15 #define HANDLE_CREATE_NO_WINDOW     (HANDLE)-3
16 
17 
18 /* FUNCTION PROTOTYPES ********************************************************/
19 
20 BOOLEAN
21 WINAPI
22 ConDllInitialize(IN ULONG Reason,
23                  IN PWSTR SessionDir);
24 
25 VOID
26 InitializeCtrlHandling(VOID);
27 
28 DWORD
29 WINAPI
30 ConsoleControlDispatcher(IN LPVOID lpThreadParameter);
31 
32 DWORD
33 WINAPI
34 PropDialogHandler(IN LPVOID lpThreadParameter);
35 
36 HANDLE WINAPI
37 DuplicateConsoleHandle(HANDLE hConsole,
38                        DWORD  dwDesiredAccess,
39                        BOOL   bInheritHandle,
40                        DWORD  dwOptions);
41 
42 BOOL WINAPI
43 GetConsoleHandleInformation(IN HANDLE hHandle,
44                             OUT LPDWORD lpdwFlags);
45 
46 BOOL WINAPI
47 SetConsoleHandleInformation(IN HANDLE hHandle,
48                             IN DWORD dwMask,
49                             IN DWORD dwFlags);
50 
51 BOOL WINAPI
52 VerifyConsoleIoHandle(HANDLE Handle);
53 
54 BOOL WINAPI
55 CloseConsoleHandle(HANDLE Handle);
56 
57 HANDLE WINAPI
58 GetConsoleInputWaitHandle(VOID);
59 
60 HANDLE
61 TranslateStdHandle(HANDLE hHandle);
62 
63 VOID
64 SetTEBLangID(VOID);
65 
66 VOID
67 SetUpConsoleInfo(IN BOOLEAN CaptureTitle,
68                  IN OUT LPDWORD pTitleLength,
69                  IN OUT LPWSTR* lpTitle OPTIONAL,
70                  IN OUT LPDWORD pDesktopLength,
71                  IN OUT LPWSTR* lpDesktop OPTIONAL,
72                  IN OUT PCONSOLE_START_INFO ConsoleStartInfo);
73 
74 VOID
75 SetUpHandles(IN PCONSOLE_START_INFO ConsoleStartInfo);
76 
77 VOID
78 InitExeName(VOID);
79 
80 VOID
81 SetUpAppName(IN BOOLEAN CaptureStrings,
82              IN OUT LPDWORD CurDirLength,
83              IN OUT LPWSTR* CurDir,
84              IN OUT LPDWORD AppNameLength,
85              IN OUT LPWSTR* AppName);
86 
87 USHORT
88 GetCurrentExeName(OUT PWCHAR ExeName,
89                   IN USHORT BufferSize);
90 
91 LPCWSTR
92 IntCheckForConsoleFileName(IN LPCWSTR pszName,
93                            IN DWORD dwDesiredAccess);
94 
95 HANDLE WINAPI
96 OpenConsoleW(LPCWSTR wsName,
97              DWORD   dwDesiredAccess,
98              BOOL    bInheritHandle,
99              DWORD   dwShareMode);
100 
101 /* EOF */
102