169 lines
5.4 KiB
C
169 lines
5.4 KiB
C
/*++
|
|
|
|
Copyright (c) 1998 Microsoft Corporation
|
|
|
|
Module Name:
|
|
|
|
unattend.h
|
|
|
|
Abstract:
|
|
|
|
Declares all of the command line options and unattend options used
|
|
in the Win9x upgrade.
|
|
|
|
Author:
|
|
|
|
Marc R. Whitten (marcw) 15-Jan-1997
|
|
|
|
Revision History:
|
|
|
|
marcw 05-Aug-1998 Clean up!
|
|
|
|
--*/
|
|
|
|
|
|
#pragma once
|
|
|
|
#define TRISTATE_NO 0
|
|
#define TRISTATE_YES 1
|
|
#define TRISTATE_AUTO 2
|
|
#define TRISTATE_REQUIRED TRISTATE_YES
|
|
#define TRISTATE_PARTIAL TRISTATE_AUTO
|
|
|
|
/*++
|
|
|
|
Macro Expansion Lists Description:
|
|
|
|
The following list is used to implement the unattend/command line options available
|
|
for the Windows NT 5.0 Win9x Upgrade. Each of the options defined below can appear either
|
|
on the command line (common for switches) and in the unattend file (more common for
|
|
paths)
|
|
|
|
Line Syntax:
|
|
|
|
BOOLOPTION(Option, SpecialHandler, Default)
|
|
STRINGOPTION(Option, SpecialHandler, Default)
|
|
MULTISZOPTION(Option, SpecialHandler, Default)
|
|
|
|
Arguments:
|
|
|
|
Option - The name of the option. This is used both as the option member name in the options
|
|
structure and as the text necessary to invoke it on the command line or in the
|
|
unattend file.
|
|
|
|
SpecialHandler - The name of a special handling function to be used to set the value of the
|
|
option. If this is NULL, the default handler will be used. (There is a seperate
|
|
default handler for each option type, BOOL, STRING, and MULTISTRING)
|
|
|
|
Default - The Default value of the option.
|
|
|
|
Variables Generated From List:
|
|
|
|
g_ConfigOptions
|
|
g_OptionsList
|
|
|
|
--*/
|
|
|
|
#define OPTION_LIST \
|
|
BOOLOPTION(ReportOnly,NULL,FALSE) \
|
|
BOOLOPTION(PauseAtReport,NULL,FALSE) \
|
|
BOOLOPTION(DoLog,NULL,FALSE) \
|
|
BOOLOPTION(NoFear,NULL,FALSE) \
|
|
BOOLOPTION(GoodDrive,NULL,FALSE) \
|
|
BOOLOPTION(TestDlls,NULL,FALSE) \
|
|
MULTISZOPTION(MigrationDlls,NULL,NULL) \
|
|
STRINGOPTION(SaveReportTo,pHandleSaveReportTo,NULL) \
|
|
BOOLOPTION(UseLocalAccountOnError,NULL,FALSE) \
|
|
BOOLOPTION(IgnoreNetworkErrors,NULL,FALSE) \
|
|
STRINGOPTION(UserDomain,NULL,NULL) \
|
|
STRINGOPTION(UserPassword,NULL,NULL) \
|
|
STRINGOPTION(DefaultPassword,pGetDefaultPassword,NULL) \
|
|
BOOLOPTION(EncryptedUserPasswords,NULL,FALSE) \
|
|
BOOLOPTION(ForcePasswordChange,NULL,FALSE) \
|
|
BOOLOPTION(MigrateUsersAsAdmin,NULL,TRUE) \
|
|
BOOLOPTION(MigrateUsersAsPowerUsers,NULL,FALSE) \
|
|
STRINGOPTION(Boot16,pHandleBoot16,S_NO) \
|
|
BOOLOPTION(Stress,NULL,FALSE) \
|
|
BOOLOPTION(Fast,NULL,FALSE) \
|
|
BOOLOPTION(AutoStress,NULL,FALSE) \
|
|
BOOLOPTION(DiffMode,NULL,FALSE) \
|
|
BOOLOPTION(MigrateDefaultUser,NULL,TRUE) \
|
|
BOOLOPTION(AnyVersion,NULL,FALSE) \
|
|
BOOLOPTION(KeepTempFiles,NULL,FALSE) \
|
|
BOOLOPTION(Help,NULL,FALSE) \
|
|
MULTISZOPTION(ScanDrives,NULL,NULL) \
|
|
BOOLOPTION(AllLog,NULL,FALSE) \
|
|
BOOLOPTION(KeepBadLinks,NULL,TRUE) \
|
|
BOOLOPTION(CheckNtFiles,NULL,FALSE) \
|
|
BOOLOPTION(ShowPacks,NULL,FALSE) \
|
|
BOOLOPTION(ForceWorkgroup,NULL,FALSE) \
|
|
BOOLOPTION(DevPause,NULL,FALSE) \
|
|
STRINGOPTION(DomainJoinText,NULL,NULL) \
|
|
BOOLOPTION(SafeMode,NULL,FALSE) \
|
|
BOOLOPTION(ShowAllReport,NULL,TRUE) \
|
|
BOOLOPTION(EnableEncryption,NULL,FALSE) \
|
|
TRISTATEOPTION(EnableBackup,NULL,TRISTATE_AUTO) \
|
|
STRINGOPTION(PathForBackup,NULL,NULL) \
|
|
TRISTATEOPTION(DisableCompression,NULL,TRISTATE_AUTO) \
|
|
BOOLOPTION(IgnoreOtherOS,NULL,FALSE) \
|
|
TRISTATEOPTION(ShowReport,NULL,TRISTATE_AUTO) \
|
|
|
|
//
|
|
// ISSUE - eliminate EnableEncryption when all teams using encrypted passwords
|
|
// are finished
|
|
//
|
|
|
|
/*++
|
|
|
|
Macro Expansion Lists Description:
|
|
|
|
The following list is used to define aliases of an option. Each alias may be used
|
|
in place of the original option name.
|
|
|
|
Line Syntax:
|
|
|
|
ALIAS(Alias,OriginalOption)
|
|
|
|
Arguments:
|
|
|
|
Alias - The text to use as a synonym of the second argument.
|
|
|
|
OriginalOption - The actual option to modify when the alias is specified.
|
|
|
|
Variables Generated From List:
|
|
|
|
g_AliasList
|
|
|
|
--*/
|
|
|
|
#define ALIAS_LIST \
|
|
ALIAS(Pr,PauseAtReport) \
|
|
ALIAS(H,Help) \
|
|
ALIAS(dp,DevPause) \
|
|
ALIAS(EnableUninstall,EnableBackup) \
|
|
|
|
|
|
|
|
#define BOOLOPTION(o,h,d) BOOL o;
|
|
#define MULTISZOPTION(o,h,d) PTSTR o;
|
|
#define STRINGOPTION(o,h,d) PTSTR o;
|
|
#define INTOPTION(o,h,d) INT o;
|
|
#define TRISTATEOPTION(o,h,d) INT o;
|
|
|
|
typedef struct {
|
|
|
|
OPTION_LIST
|
|
|
|
} USEROPTIONS, *PUSEROPTIONS;
|
|
|
|
#undef BOOLOPTION
|
|
#undef MULTISZOPTION
|
|
#undef STRINGOPTION
|
|
#undef INTOPTION
|
|
#undef TRISTATEOPTION
|
|
#undef ALIAS
|
|
|
|
|
|
extern POOLHANDLE g_UserOptionPool;
|
|
|