public static int Main(string[] args) { Application.SetCompatibleTextRenderingDefault(false); ExSetupUI.UpdateThreadUICulture(); SplashScreen.SplashInstance.ShowSplash(); ExSetupUI.SetMessageBoxHelper(); ExSetupUI.SystemParametersInfo(4107, 0, 1, 2); return(SetupBase.MainCore <ExSetupUI>(args, new SetupLoggerImpl())); }
// Token: 0x060001D4 RID: 468 RVA: 0x0000AD58 File Offset: 0x00008F58 private static void ThrowAssemblyLoadFileNotFoundException(SetupBase theApp, string exSetupGUIDllLocation) { string setupArgs = string.Empty; if (SetupBase.SetupArgs != null && SetupBase.SetupArgs.Length > 0) { setupArgs = string.Join(".", SetupBase.SetupArgs); } SetupLogger.Log(Strings.AssemblyLoadFileNotFound(exSetupGUIDllLocation, setupArgs, theApp.SourceDir, theApp.TargetDir, theApp.IsExchangeInstalled)); throw new AssemblyLoadFileNotFoundException(); }
// Token: 0x0600004D RID: 77 RVA: 0x00003618 File Offset: 0x00001818 public CopyFilesPage(SetupBase theApp) { this.sourceDir = Path.Combine(theApp.ParsedArguments["sourcedir"].ToString(), "Setup\\ServerRoles\\Common"); this.fileCopier = new FileCopier(this.sourceDir, Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location)); this.fileCopier.FileCopierProgressEvent += this.FileCopier_ProgressChangedEvent; this.fileCopier.FileCopierCompletedEvent += this.FileCopier_CompletedEvent; this.fileCopier.FileCopierBeforeFileCopyEvent += this.FileCopier_FileCopierBeforeFileCopyEvent; this.fileCopier.FileCopierCancelEvent += this.FileCopier_CancelEvent; this.fileCopier.FileCopierErrorEvent += new FileCopierErrorHandler(this.FileCopierUpdatesStatus); this.InitializeComponent(); base.WizardCancel += this.CopyFilePage_WizardCancel; base.PageTitle = Strings.CopyFilesPageTitle; this.copyFilesLabel.Text = Strings.CopyFilesText; }
// Token: 0x06000162 RID: 354 RVA: 0x0000802C File Offset: 0x0000622C public InitializingSetupPage(IList <SetupWizardPage> pages, SetupBase theApp) { this.pages = pages; this.theApp = theApp; this.InitializeComponent(); base.PageTitle = Strings.InitializingSetupPageTitle; base.WizardCancel += this.InitializingSetupPage_WizardCancel; this.progressTimer.Tick += this.ProgressTimer_Tick; this.progressTimer.Interval = 100; this.progress = 0; this.backgroundWorker.WorkerReportsProgress = true; this.backgroundWorker.WorkerSupportsCancellation = true; this.backgroundWorker.DoWork += this.BackgroundWorker_DoWork; this.backgroundWorker.RunWorkerCompleted += this.BackgroundWorker_RunWorkerCompleted; this.EnableNextAutoClick = true; }
// Token: 0x060001E1 RID: 481 RVA: 0x0000B0D8 File Offset: 0x000092D8 public UpdatesDownloadsPage(SetupBase theApp) { this.webFileDownloader = new WebFileDownloader(); this.webFileDownloader.DownloadProgressEvent += this.WebFileDownloader_ProgressChangedEvent; this.webFileDownloader.DownloadCompletedEvent += this.WebFileDownloader_DownloadCompletedEvent; this.webFileDownloader.DownloaderErrorEvent += new DownloaderErrorHandler(this.UpdateDownloadUpdatesStatusBox); this.webFileDownloader.DownloadCancelEvent += this.WebFileDownloader_DownloadCancelEvent; this.InitializeComponent(); base.Name = "UpdatesDownloadsPage"; base.SetActive += this.UpdatesDownloadsPage_SetActive; base.CheckLoaded += this.UpdatesDownloadsPage_CheckLoaded; base.WizardCancel += this.UpdatesDownloadsPage_WizardCancel; this.UnableContactServerTextBox.LinkClicked += this.UnableContactServerTextBox_LinkClicked; base.Visible = base.PageVisible; this.UnableContactServerTextBox.Visible = false; this.sourceDir = theApp.ParsedArguments["sourcedir"].ToString(); }
/// <summary> /// 检查数据库表是否存在,不存在创建新表 /// </summary> public void ExistTableObjects() { ArrayList list = new ArrayList(); List <string> tableNameList = SetupBase.ExistsTableObjects(); foreach (var item in tableList) { if (!tableNameList.Contains(item.Key)) { list.Add(item.Value); } } if (list.Count > 0) { SetupBase.CreateTableObjects(list); } }
// Token: 0x060001CF RID: 463 RVA: 0x0000A9E0 File Offset: 0x00008BE0 public SetupWizard(SetupBase theApp, bool updates, bool isExchangeInstalled) { base.Name = "SetupWizard"; this.Text = Strings.SetupWizardCaption; this.InitializeComponent(); base.SetBtnNextText(Strings.btnNext); base.SetBtnPreviousText(Strings.btnPrevious); base.SetCancelMessageBoxMessage(Strings.CancelMessageBoxMessage); base.SetPrintErrorMessageBoxMessage(Strings.SetupFailedPrintDocument); base.SetBrowserLaunchErrorMessage(Strings.BrowserLaunchError); int num = 23; if (num > 0) { base.SetExchangeServerLabel(Strings.MESICumulativeUpdate(Strings.MicrosoftExchangeServer, num)); } else { base.SetExchangeServerLabel(Strings.MESI(Strings.MicrosoftExchangeServer)); } HelpProvider.Initialize(HelpProvider.HelpAppName.Setup); base.HelpUrlGenerator = this; SetupWizard.IsPartiallyConfigured = this.IsRolesPartiallyConfigured(isExchangeInstalled); if (SetupWizard.IsPartiallyConfigured && ((SetupOperations)theApp.ParsedArguments["mode"] == SetupOperations.Install || (SetupOperations)theApp.ParsedArguments["mode"] == SetupOperations.Upgrade)) { SetupWizard.PopulateWizard(base.Pages, theApp); return; } if (theApp.ParsedArguments.ContainsKey("mode") && (((SetupOperations)theApp.ParsedArguments["mode"] == SetupOperations.Install && !isExchangeInstalled) || (SetupOperations)theApp.ParsedArguments["mode"] == SetupOperations.Upgrade)) { if (updates) { base.Pages.Add(new CheckForUpdatesPage()); base.Pages.Add(new UpdatesDownloadsPage(theApp)); } base.Pages.Add(new CopyFilesPage(theApp)); base.Pages.Add(new InitializingSetupPage(base.Pages, theApp)); return; } SetupWizard.PopulateWizard(base.Pages, theApp); }
/// <summary> /// 添加数据 /// </summary> /// <param name="tableObjects"></param> /// <param name="tableName"></param> public void AddTableObjects(Dictionary <string, string> tableObjects, string tableName) { ArrayList list = new ArrayList(); var v = this.tableList[tableName]; PropertyInfo[] propertys = v.GetType().GetProperties(); foreach (PropertyInfo property in propertys) { if (!tableObjects.ContainsKey("Id") && property.Name.Equals("Id")) { continue; } property.SetValue(v, Convert.ChangeType(tableObjects[property.Name], property.PropertyType)); } list.Add(v); if (tableObjects.ContainsKey("Id")) { SetupBase.UpdateTableObjects(list); } else { SetupBase.AddTableObjects(list); } }
// Token: 0x060001D3 RID: 467 RVA: 0x0000ABC4 File Offset: 0x00008DC4 internal static void PopulateWizard(IList <SetupWizardPage> pages, SetupBase theApp) { AssemblyResolver[] array = null; string text = string.Empty; try { if (SetupWizard.setupGUIAssembly == null) { text = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location); array = AssemblyResolver.Install(new AssemblyResolver[] { new FileSearchAssemblyResolver { SearchPaths = new string[] { text }, Recursive = true } }); text = Path.Combine(text, "Microsoft.Exchange.Setup.GUI.dll"); object[] parameters = new object[] { pages, theApp }; SetupWizard.setupGUIAssembly = Assembly.LoadFile(text); foreach (Type type in SetupWizard.setupGUIAssembly.GetTypes()) { if (type.IsClass && type.FullName == "Microsoft.Exchange.Setup.GUI.SetupWizard") { object obj = Activator.CreateInstance(type); MethodInfo method = type.GetMethod("Main"); method.Invoke(obj, parameters); break; } } } } catch (FileNotFoundException e) { SetupLogger.LogError(e); SetupWizard.ThrowAssemblyLoadFileNotFoundException(theApp, text); } catch (Exception ex) { SetupLogger.LogError(ex); if (ex.InnerException != null && ex.InnerException is FileNotFoundException) { SetupWizard.ThrowAssemblyLoadFileNotFoundException(theApp, text); } throw; } finally { if (array != null) { AssemblyResolver.Uninstall(array); } } }
public override void Initialize <C>(ParentObject item, Func <ParentObject, int> creator, SetupBase <C> setupBase) { base.Initialize(item, creator, setupBase); var c = new ValueObjectSetup(); c.Initialize(item.ComplexValue); ComplexValue = c; }
public static int Main(string[] args) { return(SetupBase.MainCore <ExSetup>(args, new SetupLoggerImpl())); }
/// <summary> /// 查询指定数据库表的数据 /// </summary> /// <param name="tableName"></param> /// <returns></returns> public List <Dictionary <string, string> > FindTableObjects(string tableName) { return(SetupBase.SelectTableObjectsShow(tableList[tableName])); }
/// <summary> /// 查询名称 /// </summary> /// <param name="tableName"></param> /// <returns></returns> public Dictionary <string, string> FindTableName(string tableName) { return(SetupBase.FindTableName(tableList[tableName])); }
/// <summary> /// 根据ID删除表数据 /// </summary> /// <param name="id"></param> /// <param name="tableName"></param> public void DelTableObjects(string id, string tableName) { SetupBase.DeleteTableObjects(id, tableName); }
/// <summary> /// 根据ID获取数据 /// </summary> /// <param name="id"></param> /// <param name="tableName"></param> /// <returns></returns> public Dictionary <string, string> GetTableObjects(string id, string tableName) { return(SetupBase.GetTableObjectsById(id, tableList[tableName])); }