103 lines
2.4 KiB
C++
103 lines
2.4 KiB
C++
#pragma once
|
|
|
|
#include <map>
|
|
#include "Less.h"
|
|
|
|
|
|
enum ESwitch
|
|
{
|
|
// task switch
|
|
SWITCH_TASK,
|
|
// option switches
|
|
SWITCH_OPTION_FILE,
|
|
// migration switches
|
|
SWITCH_TEST_MIGRATION,
|
|
SWITCH_INTRA_FOREST,
|
|
SWITCH_SOURCE_DOMAIN,
|
|
SWITCH_SOURCE_OU,
|
|
SWITCH_TARGET_DOMAIN,
|
|
SWITCH_TARGET_OU,
|
|
SWITCH_RENAME_OPTION,
|
|
SWITCH_RENAME_PREFIX_OR_SUFFIX,
|
|
SWITCH_PASSWORD_OPTION,
|
|
SWITCH_PASSWORD_SERVER,
|
|
SWITCH_PASSWORD_FILE,
|
|
SWITCH_CONFLICT_OPTIONS,
|
|
SWITCH_CONFLICT_PREFIX_OR_SUFFIX,
|
|
SWITCH_USER_PROPERTIES_TO_EXCLUDE,
|
|
SWITCH_GROUP_PROPERTIES_TO_EXCLUDE,
|
|
SWITCH_COMPUTER_PROPERTIES_TO_EXCLUDE,
|
|
// user migration switches
|
|
SWITCH_DISABLE_OPTION,
|
|
SWITCH_SOURCE_EXPIRATION,
|
|
SWITCH_MIGRATE_SIDS,
|
|
SWITCH_TRANSLATE_ROAMING_PROFILE,
|
|
SWITCH_UPDATE_USER_RIGHTS,
|
|
SWITCH_MIGRATE_GROUPS,
|
|
SWITCH_UPDATE_PREVIOUSLY_MIGRATED_OBJECTS,
|
|
SWITCH_FIX_GROUP_MEMBERSHIP,
|
|
SWITCH_MIGRATE_SERVICE_ACCOUNTS,
|
|
// group migration switches
|
|
// SWITCH_MIGRATE_SIDS,
|
|
SWITCH_UPDATE_GROUP_RIGHTS,
|
|
// SWITCH_UPDATE_PREVIOUSLY_MIGRATED_OBJECTS,
|
|
// SWITCH_FIX_GROUP_MEMBERSHIP,
|
|
SWITCH_MIGRATE_MEMBERS,
|
|
// SWITCH_DISABLE_OPTION,
|
|
// SWITCH_SOURCE_EXPIRATION,
|
|
// SWITCH_TRANSLATE_ROAMING_PROFILE,
|
|
// computer migration switches
|
|
SWITCH_TRANSLATION_OPTION,
|
|
SWITCH_TRANSLATE_FILES_AND_FOLDERS,
|
|
SWITCH_TRANSLATE_LOCAL_GROUPS,
|
|
SWITCH_TRANSLATE_PRINTERS,
|
|
SWITCH_TRANSLATE_REGISTRY,
|
|
SWITCH_TRANSLATE_SHARES,
|
|
SWITCH_TRANSLATE_USER_PROFILES,
|
|
SWITCH_TRANSLATE_USER_RIGHTS,
|
|
SWITCH_RESTART_DELAY,
|
|
// security translation switches
|
|
// SWITCH_TRANSLATION_OPTION,
|
|
// SWITCH_TRANSLATE_FILES_AND_FOLDERS,
|
|
// SWITCH_TRANSLATE_LOCAL_GROUPS,
|
|
// SWITCH_TRANSLATE_PRINTERS,
|
|
// SWITCH_TRANSLATE_REGISTRY,
|
|
// SWITCH_TRANSLATE_SHARES,
|
|
// SWITCH_TRANSLATE_USER_PROFILES,
|
|
// SWITCH_TRANSLATE_USER_RIGHTS,
|
|
SWITCH_SID_MAPPING_FILE,
|
|
// service account enumeration switches
|
|
// report generation
|
|
SWITCH_REPORT_TYPE,
|
|
SWITCH_REPORT_FOLDER,
|
|
// include switches
|
|
SWITCH_INCLUDE_NAME,
|
|
SWITCH_INCLUDE_FILE,
|
|
SWITCH_INCLUDE_DOMAIN,
|
|
// exclude switches
|
|
SWITCH_EXCLUDE_NAME,
|
|
SWITCH_EXCLUDE_FILE,
|
|
// key switches
|
|
SWITCH_KEY_IDENTIFIER,
|
|
SWITCH_KEY_FOLDER,
|
|
SWITCH_KEY_PASSWORD,
|
|
// help switch
|
|
SWITCH_HELP,
|
|
};
|
|
|
|
|
|
//---------------------------------------------------------------------------
|
|
// Switch Map
|
|
//---------------------------------------------------------------------------
|
|
|
|
|
|
class CSwitchMap :
|
|
public std::map<_bstr_t, int, StringIgnoreCaseLess>
|
|
{
|
|
public:
|
|
|
|
CSwitchMap();
|
|
|
|
int GetSwitch(LPCTSTR pszSwitch);
|
|
};
|