Reactos
1/*
2 */
3
4#ifndef __USERINIT_H__
5#define __USERINIT_H__
6
7#include <stdio.h>
8#include <stdlib.h>
9
10/* PSDK/NDK Headers */
11#define WIN32_NO_STATUS
12#define _INC_WINDOWS
13#define COM_NO_WINDOWS_H
14#include <windef.h>
15#include <winbase.h>
16#include <wingdi.h>
17#include <winreg.h>
18#include <regstr.h>
19#include <winnls.h>
20#include <winuser.h>
21#include <undocuser.h>
22
23#include <strsafe.h>
24
25#include <ndk/exfuncs.h>
26
27#include <wine/debug.h>
28WINE_DEFAULT_DEBUG_CHANNEL(userinit);
29
30#include "resource.h"
31
32
33typedef enum
34{
35 LOCALEPAGE,
36 STARTPAGE,
37 DONE
38} PAGESTATE;
39
40typedef enum
41{
42 SHELL,
43 INSTALLER,
44 REBOOT
45} RUN;
46
47typedef struct _IMGINFO
48{
49 HBITMAP hBitmap;
50 INT cxSource;
51 INT cySource;
52 INT iPlanes;
53 INT iBits;
54} IMGINFO, *PIMGINFO;
55
56typedef struct
57{
58 PAGESTATE NextPage;
59 RUN Run;
60 IMGINFO ImageInfo;
61 struct _LIVECD_UNATTEND* Unattend;
62} STATE, *PSTATE;
63
64
65extern HINSTANCE hInstance;
66
67LONG
68ReadRegSzKey(
69 IN HKEY hKey,
70 IN LPCWSTR pszKey,
71 OUT LPWSTR *pValue);
72
73BOOL
74ExpandInstallerPath(
75 IN LPCWSTR lpInstallerName,
76 OUT LPWSTR lpInstallerPath,
77 IN SIZE_T PathSize);
78
79BOOL
80IsLiveCD(VOID);
81
82VOID
83RunLiveCD(
84 PSTATE State);
85
86#endif /* __USERINIT_H__ */