[SYSSETUP]
[reactos.git] / reactos / dll / win32 / syssetup / globals.h
1 /*
2 * Copyright (C) 2004 Eric Kohl
3 *
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation; either version 2 of the License, or
7 * (at your option) any later version.
8 *
9 * This program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details.
13 *
14 * You should have received a copy of the GNU General Public License along
15 * with this program; if not, write to the Free Software Foundation, Inc.,
16 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
17 */
18
19
20 typedef struct _TZ_INFO
21 {
22 LONG Bias;
23 LONG StandardBias;
24 LONG DaylightBias;
25 SYSTEMTIME StandardDate;
26 SYSTEMTIME DaylightDate;
27 } TZ_INFO, *PTZ_INFO;
28
29 typedef struct _TIMEZONE_ENTRY
30 {
31 struct _TIMEZONE_ENTRY *Prev;
32 struct _TIMEZONE_ENTRY *Next;
33 WCHAR Description[64]; /* 'Display' */
34 WCHAR StandardName[32]; /* 'Std' */
35 WCHAR DaylightName[32]; /* 'Dlt' */
36 TZ_INFO TimezoneInfo; /* 'TZI' */
37 ULONG Index;
38 } TIMEZONE_ENTRY, *PTIMEZONE_ENTRY;
39
40 typedef struct _SETUPDATA
41 {
42 HFONT hTitleFont;
43
44 WCHAR OwnerName[51];
45 WCHAR OwnerOrganization[51];
46 WCHAR ComputerName[MAX_COMPUTERNAME_LENGTH + 1]; /* max. 15 characters */
47 WCHAR AdminPassword[15]; /* max. 14 characters */
48 BOOL UnattendSetup;
49 BOOL DisableVmwInst;
50
51 SYSTEMTIME SystemTime;
52 PTIMEZONE_ENTRY TimeZoneListHead;
53 PTIMEZONE_ENTRY TimeZoneListTail;
54 DWORD TimeZoneIndex;
55 DWORD DisableAutoDaylightTimeSet;
56 LCID LocaleID;
57 } SETUPDATA, *PSETUPDATA;
58
59 typedef struct _ADMIN_INFO
60 {
61 LPWSTR Name;
62 LPWSTR Domain;
63 LPWSTR Password;
64 } ADMIN_INFO, *PADMIN_INFO;
65
66 extern HINSTANCE hDllInstance;
67 extern HINF hSysSetupInf;
68 extern SETUPDATA SetupData;
69 extern ADMIN_INFO AdminInfo;
70
71 BOOL RegisterTypeLibraries (HINF hinf, LPCWSTR szSection);
72
73 /* security.c */
74 NTSTATUS SetAccountDomain(LPCWSTR DomainName,
75 PSID DomainSid);
76 VOID InstallSecurity(VOID);
77 NTSTATUS
78 SetAdministratorPassword(LPCWSTR Password);
79
80 VOID
81 SetAutoAdminLogon(VOID);
82
83 /* wizard.c */
84 VOID InstallWizard (VOID);
85
86 /* EOF */