예제 #1
0
        private void MainWin_Load(object sender, EventArgs e)
        {
            {
                string logFile  = Path.Combine(ProcMain.SelfDir, Path.GetFileNameWithoutExtension(ProcMain.SelfFile)) + ".log";
                string logFile0 = logFile + "0";

                File.Delete(logFile);
                File.Delete(logFile0);

                ProcMain.WriteLog = message =>
                {
                    try
                    {
                        using (new MSection("{67bbcf7a-ebe2-42a9-aeb2-54ee4bb40c67}"))                         // 念の為ロック
                        {
                            if (File.Exists(logFile) && Consts.LOG_FILE_SIZE_MAX < new FileInfo(logFile).Length)
                            {
                                File.Delete(logFile0);
                                File.Move(logFile, logFile0);
                            }
                            using (StreamWriter writer = new StreamWriter(logFile, true, Encoding.UTF8))
                            {
                                writer.WriteLine("[" + DateTime.Now + "] " + message);
                            }
                        }
                    }
                    catch
                    { }
                };
            }

            ExtraTools.AntiWindowsDefenderSmartScreen();

            Ground.I.LoadFromFile();

            if (Ground.I.Config.SettingToLog)
            {
                ProcMain.WriteLog("Setting: " + JsonTools.Encode(DebugTools.ToListOrMap(Ground.I)));                 // デバッグ用
            }
            if (Ground.I.MainWin_Maximized)
            {
                this.WindowState = FormWindowState.Maximized;
            }
            else if (Ground.I.MainWin_W != -1)
            {
                this.Left   = Ground.I.MainWin_L;
                this.Top    = Ground.I.MainWin_T;
                this.Width  = Ground.I.MainWin_W;
                this.Height = Ground.I.MainWin_H;
            }
        }