//+------------------------------------------------------------------ // // Project: Windows NT4 DS Client Setup Wizard // // Purpose: Installs the Windows NT4 DS Client Files // // File: dscsetup.h // // History: March 1998 Zeyong Xu Created // Jan 2000 Jeff Jones (JeffJon) Modified // - changed to be an NT setup // //------------------------------------------------------------------ #define MAX_MESSAGE 1024 #define MAX_TITLE 64 #define SETUP_SUCCESS 0 #define SETUP_ERROR 1 #define SETUP_CANCEL 2 #define NUM_FILES_TOTAL 14 #define SIZE_TOTAL 10 #define MB_TO_BYTE 1000000 #define SIZE_TITLE_FONT 12 #define SIZE_WIZARD_PAGE 4 #define STR_DSCLIENT_REGKEY TEXT("Software\\Microsoft\\Windows\\CurrentVersion\\Setup\\OptionalComponents\\DsClient") #define STR_IE_REGKEY TEXT("Software\\Microsoft\\Internet Explorer") #define STR_VERSION TEXT("Version") #define STR_IE_VERSION_4 TEXT("4") #define STR_DCOM_REGKEY TEXT("CLSID\\{BDC67890-4FC0-11D0-A805-00AA006D2EA4}\\InstalledVersion") #define STR_DLL_NAME TEXT("dscsetup.dll") #define STR_INSTALL_DCOM95 TEXT("dcom95.exe /q /r:n") #define STR_INSTALL_WAB TEXT("wabinst.exe /q /r:n") #define STR_INSTALL_ADSI TEXT("adsix86.exe /C:\"rundll32 advpack.dll,LaunchINFSection adsix86.inf,RegADSIWithDsclient,,N\"") #define STR_INSTALL_ADSIWREMOVE TEXT("adsix86.exe") #define CHAR_BACKSLASH TEXT('\\') // define a installation structure typedef struct _SINSTALLVARIBLES { HINSTANCE m_hInstance; HANDLE m_hInstallThread; UINT m_uTimerID; HWND m_hProgress; HWND m_hFileNameItem; HFONT m_hBigBoldFont; BOOL m_bDCOMInstalled; BOOL m_bQuietMode; BOOL m_bWabInst; BOOL m_bSysDlls; #ifdef MERRILL_LYNCH BOOL m_bNoReboot; #endif UINT m_nSetupResult; TCHAR m_szSourcePath[MAX_PATH + 1]; CRITICAL_SECTION m_oCriticalSection; } SInstallVariables; VOID InitVariables(); VOID ParseCmdline(LPSTR lpCmdLine); DWORD DoInstallation(HWND hWnd); VOID CentreWindow(HWND hwnd); DWORD64 SetupGetDiskFreeSpace(); BOOL CheckDSClientInstalled(); BOOL DSCSetupWizard(); void CheckDCOMInstalled(); BOOL LoadLicenseFile(HWND hDlg); BOOL CheckDiskSpace(); BOOL CreateObjects(); VOID DestroyObjects(); VOID CreateBigFont(); // export function DWORD WINAPI DoDscSetup(LPCSTR lpCmdLine);