private static void Initialize(Settings settings, OptionItems options, PatrolTable patterns) { if (initialized) { throw new InvalidOperationException("既に初期化されています"); } if (settings == null) { throw new ArgumentNullException("settings"); } OnInitializing(); //シリアル化インスタンス //アプリケーション設定 currentSettings = settings; currentSettings.MarkCrush(); //ユーザー設定 Options = options; Options.ItemsChanged += new EventHandler(Options_ItemsChanged); //巡回設定 PatrolPatterns = patterns; //オプション InitializeOptions(); //バージョンテキスト version = System.Windows.Forms.Application.ProductVersion; if (version.EndsWith(TrimedTailVersionText)) { version = version.Substring(0, version.Length - TrimedTailVersionText.Length); } //if (IsBeta) //{ // version += "β"; //} //詳細情報 currentSettings.Information.LastUptime = DateTime.Now; //作業フォルダー if (System.IO.Directory.Exists(DeanCCCore.Core.VersionUp.VersionUpClient.NewVersionFolder)) { System.IO.Directory.Delete(DeanCCCore.Core.VersionUp.VersionUpClient.NewVersionFolder, true); } //板一覧 if (settings.FirstRunning) { try { currentSettings.Boards.OnlineUpdate(); } catch (ApplicationException ex) { currentSettings.Boards.LoadBoardFromXml(); logs.Add("板一覧更新", ex.Message + " デフォルトの板一覧を読み込みます。", LogStatus.Error); } catch (System.Net.WebException ex) { currentSettings.Boards.LoadBoardFromXml(); logs.Add("通信エラー", ex.Message + " デフォルトの板一覧を読み込みます。", LogStatus.Error); } } //スレッド一覧 UpdateThreads(); OnInitialized(); }
//private static bool savableUserSettings = true; ///// <summary> ///// ユーザーが変更可能な設定を保存するかどうかを取得または設定します ///// </summary> //public static bool SavableUserSettings //{ // get { return savableUserSettings; } // set { savableUserSettings = value; } //} private static Settings CreateSettings() { Settings settings = null; //if (loadBackup) //{ // try // { // settings = Settings.CreateBackUp(); // return settings; // } // catch (SerializationException ex) // { // MessageBox.Show(ex.Message, // "バックアップ適用失敗", MessageBoxButtons.OK, MessageBoxIcon.Error); // } //} try { settings = Settings.Create(); } catch (SerializationException ex) { settings = new Settings(); MessageBox.Show(ex.Message + "\n初期設定を適用します", "設定ファイル読み込み失敗", MessageBoxButtons.OK, MessageBoxIcon.Error); } return settings; }