//Copyright (c) 1998 - 1999 Microsoft Corporation

// constants.cpp
#include "stdafx.h"

#ifndef __TSOC_CONSTANTS_H__
#define __TSOC_CONSTANTS_H__

extern LPCTSTR     TERMINAL_SERVER_THIS_VERSION;
extern LPCTSTR     TERMINAL_SERVER_NO_VERSION;

extern LPCTSTR     PRODUCT_SUITE_KEY;
extern LPCTSTR     SYSTEM_RDPWD_KEY;
extern LPCTSTR     TS_LANATABLE_KEY;
extern LPCTSTR     TS_VIDEO_KEY;
extern LPCTSTR     PRODUCT_SUITE_VALUE;
extern LPCTSTR     TS_PRODUCT_SUITE_STRING;
extern LPCTSTR     TS_ENABLED_VALUE;
extern LPCTSTR     TS_APPCMP_VALUE;

extern LPCTSTR     LOGFILE;
extern LPCTSTR     MODULENAME;

extern LPCTSTR     BASE_COMPONENT_NAME;
extern LPCTSTR     APPSRV_COMPONENT_NAME;

extern LPCTSTR      REMOTE_ADMIN_SERVER_X86;
extern LPCTSTR      APPSERVER_SERVER_X86;
extern LPCTSTR      TSDISABLED_SERVER_X86;
extern LPCTSTR      PERSONALTS_SERVER_X86;


extern LPCTSTR      REMOTE_ADMIN_SERVER_IA64;
extern LPCTSTR      APPSERVER_SERVER_IA64;
extern LPCTSTR      TSDISABLED_SERVER_IA64;
extern LPCTSTR      PERSONALTS_SERVER_IA64;

extern LPCTSTR     UPGRADE_FROM_40_SERVER_X86;
extern LPCTSTR     UPGRADE_FROM_50_SERVER_X86;
extern LPCTSTR     UPGRADE_FROM_50_SERVER_X86;
extern LPCTSTR     FRESH_INSTALL_SERVER_X86;
extern LPCTSTR     UPGRADE_FROM_51_SERVER_X86;

extern LPCTSTR     UPGRADE_FROM_40_SERVER_IA64;
extern LPCTSTR     UPGRADE_FROM_50_SERVER_IA64;
extern LPCTSTR     UPGRADE_FROM_50_SERVER_IA64;
extern LPCTSTR     FRESH_INSTALL_SERVER_IA64;
extern LPCTSTR     UPGRADE_FROM_51_SERVER_IA64;

extern LPCTSTR      REMOTE_ADMIN_PRO_X86;
extern LPCTSTR      APPSERVER_PRO_X86;
extern LPCTSTR      TSDISABLED_PRO_X86;
extern LPCTSTR      PERSONALTS_PRO_X86;

extern LPCTSTR      REMOTE_ADMIN_PRO_IA64;
extern LPCTSTR      APPSERVER_PRO_IA64;
extern LPCTSTR      TSDISABLED_PRO_IA64;
extern LPCTSTR      PERSONALTS_PRO_IA64;

// extern LPCTSTR     TOGGLE_ON_SECTION_PRO;
// extern LPCTSTR     TOGGLE_OFF_SECTION_PRO;

extern LPCTSTR     UPGRADE_FROM_40_PRO_X86;
extern LPCTSTR     UPGRADE_FROM_50_PRO_X86;
extern LPCTSTR     UPGRADE_FROM_51_PRO_X86;
extern LPCTSTR     FRESH_INSTALL_PRO_X86;

extern LPCTSTR     UPGRADE_FROM_40_PRO_IA64;
extern LPCTSTR     UPGRADE_FROM_50_PRO_IA64;
extern LPCTSTR     UPGRADE_FROM_51_PRO_IA64;
extern LPCTSTR     FRESH_INSTALL_PRO_IA64;


// extern LPCTSTR     SECURITY_APPSRV_SECTION;
// extern LPCTSTR     SECURITY_REMADM_SECTION;
// extern LPCTSTR     SECURITY_PRO_SECTION;


extern LPCTSTR     TSCLIENTS_INSTALL_SECTION_SERVER;
extern LPCTSTR     TSCLIENTS_UNINSTALL_SECTION_SERVER;

extern LPCTSTR     TSCLIENTS_INSTALL_SECTION_PRO;
extern LPCTSTR     TSCLIENTS_UNINSTALL_SECTION_PRO;

extern LPCTSTR     TSCLIENT_DIRECTORY;

extern LPCTSTR     TS_EVENT_SOURCE;

#define            TS_UNATTEND_SECTION          BASE_COMPONENT_NAME
extern LPCTSTR     TS_UNATTEND_APPSRVKEY;
extern LPCTSTR     TS_UNATTEND_PERMKEY;

extern LPCTSTR     TERMSRV_PACK_4_KEY;
extern LPCTSTR     TERMSRV_PACK_5_KEY;
extern LPCTSTR     TERMSRV_PACK_6_KEY;
extern LPCTSTR     TERMSRV_PACK_7_KEY;
extern LPCTSTR     TERMSRV_PACK_8_KEY;
extern LPCTSTR     SOFTWARE_UNINSTALL_KEY;

extern LPCTSTR     DENY_CONN_VALUE;
extern LPCTSTR     TS_ALLOW_CON_ENTRY;
extern LPCTSTR     TS_ALLOW_CON_ENTRY_2;
extern LPCTSTR     TS_LICENSING_MODE;

extern LPCTSTR     SVCHOSST_KEY;
extern LPCTSTR     NETSVCS_VAL;
extern LPCTSTR     TERMSERVICE;
extern LPCTSTR     TERMSVCS_VAL;
extern LPCTSTR     TERMSVCS_PARMS;
extern LPCTSTR     TERMSVCS_STACK;
extern LPCTSTR     SVCHOSST_TERMSRV_KEY;
extern LPCTSTR     TERMSERVICE_MULTISZ;


//
//  REGAPI.H creates a wide and an ansi version, instead of #ifdef'ing as
//  necessary.
//

#ifdef UNICODE
#define REG_CHGUSR_OPTION_KEY   CHANGEUSER_OPTION_REG_NAME
#define REG_CONTROL_TS_KEY      REG_CONTROL_TSERVER
#define REG_PRODUCT_VER_KEY     REG_CITRIX_PRODUCTVERSION
#define REG_SECURITY_VALUE      REG_SECURITY
#define REG_WINSTATION_KEY      WINSTATION_REG_NAME
#else
#define REG_CHGUSR_OPTION_KEY   CHANGEUSER_OPTION_REG_NAME_A
#define REG_CONTROL_TS_KEY      REG_CONTROL_TSERVER_A
#define REG_PRODUCT_VER_KEY     REG_CITRIX_PRODUCTVERSION_A
#define REG_SECURITY_VALUE      REG_SECURITY_A
#define REG_WINSTATION_KEY      WINSTATION_REG_NAME_A
#endif

#define REG_CONTROL_TS_LICENSING_KEY    TEXT("System\\CurrentControlSet\\Control\\Terminal Server\\Licensing Core")

#define REG_LICENSING_MODE_AC_ON        TEXT("PolicyAcOn")
#define REG_LICENSING_MODE_AC_OFF       TEXT("PolicyAcOff")


#endif