[GFLAGS] Implement imagefile options
[reactos.git] / modules / rosapps / applications / cmdutils / gflags / gflags.h
1 /*
2 * PROJECT: Global Flags utility
3 * LICENSE: GPL-2.0 (https://spdx.org/licenses/GPL-2.0)
4 * PURPOSE: Global Flags utility page heap options
5 * COPYRIGHT: Copyright 2017 Pierre Schweitzer (pierre@reactos.org)
6 */
7
8 #define WIN32_NO_STATUS
9 #include <stdarg.h>
10 #include <windef.h>
11 #include <winbase.h>
12 #include <winuser.h>
13 #include <winreg.h>
14 #include <stdio.h>
15 #include <stdlib.h>
16 #include <pstypes.h>
17
18 extern
19 const WCHAR ImageExecOptionsString[];
20
21 /* Option specific commandline parsing */
22 BOOL PageHeap_ParseCmdline(INT i, int argc, LPWSTR argv[]);
23 BOOL ImageFile_ParseCmdline(INT i, int argc, LPWSTR argv[]);
24
25 /* Execute parsed options */
26 INT PageHeap_Execute();
27 INT ImageFile_Execute();
28
29 /* Common functions */
30 DWORD ReadSZFlagsFromRegistry(HKEY SubKey, PWSTR Value);
31 BOOL OpenImageFileExecOptions(IN REGSAM SamDesired, IN OPTIONAL PCWSTR ImageName, OUT HKEY* Key);
32
33 #define DEST_REGISTRY 1
34 #define DEST_KERNEL 2
35 #define DEST_IMAGE 4
36
37 void PrintFlags(IN DWORD GlobalFlags, IN OPTIONAL WORD Dest);