Beispiel #1
0
        private void FormMain_Load(object sender, EventArgs e)
        {
            // 認証パスワード登録or確認フォームをDisposeする場合。
            if (formPassDispose)
            {
                Environment.Exit(1);
            }
            else
            {
                // 認証パスワード登録or確認フォームをDisposeせずにHideしていた場合は、FormMainロード完了後に各々Disposeする。
                switch (thisformDispose)
                {
                    case "formPassRegist":
                        formPassRegist.Dispose();
                        break;
                    case "formPassCheck":
                        formPassCheck.Dispose();
                        break;
                    default:
                        break;
                }
            }

            // Mainフォームを表示する際にdbファイルを自動的にインポートする。
            if (initImportdb)
            {
                try
                {
                    foreach (LogicItemCollection importItem in logicCsv.ImportCsv(FILENAME, encryptionType))
                    {
                        itemList.Add(importItem);
                    }
                    OnListRefresh();
                    importEncryptionType = encryptionType.ToString();
                }
                catch (IOException ioExcept)
                {
                    ShowMyDialog.ShowErrorMessageBox
                        ("dbファイルの自動インポートに失敗しました。" +
                         ioExcept.Message + "\n\n" +
                         "ファイルのフォーマットが正しくない、ファイルが破損している可能性があります。\n" +
                         "プログラムを起動する前に無効なdbファイルを削除する必要があります。\n\n" +
                         "プログラムは終了します。",
                         "- 自動インポートの実行のエラー");
                    // アプリケーションの強制終了。
                    Environment.Exit(1);
                }
                catch (CryptographicException cryptExcept)
                {
                    ShowMyDialog.ShowErrorMessageBox
                        ("dbファイルの自動インポートに失敗しました。" +
                         cryptExcept.Message + "\n\n" +
                         "kfconfigファイルのencryptionTypeの値が正しくない可能性があります。\n" +
                         "プログラムを起動する前にencryptionTypeを有効な値に設定する必要があります。\n\n" +
                         "プログラムは終了します。",
                         "- 自動インポートの実行のエラー");
                    // アプリケーションの強制終了。
                    Environment.Exit(1);
                }
                finally
                  {
                      if (logicCsv.importStream != null)
                      {
                          logicCsv.importStream.Close();
                      }
                }

                // アイテムをインポートする前に本人認証パスワードを変更していた場合。
                if (hashChangeBefImport)
                {
                    foreach (LogicItemCollection item in itemList)
                    {
                        item.UserCheckPassHash = yourPassHashBefImp;

                    }
                    hashChangeBefImport = false;
                    alreadyExportdb = false;
                }
                alreadyExportdb = true;

                // アイテムをインポートする前に設定ファイルを変更していた場合。
                if (!configChangeBefImport)
                {
                    itemListSearch.Clear();

                    // アラームを設定していて且つ有効期日が迫っているアイテムを確認。
                    foreach (LogicItemCollection item in itemList)
                    {
                        if (item.IsAlarmOnOrOff)
                        {
                            ShowFromAlarmExpire = true;
                            break;
                        }
                    }
                    if (ShowFromAlarmExpire)
                    {
                        foreach (LogicItemCollection alarmItem in itemList)
                        {
                            if (alarmItem.IsAlarmLimitOnOrOff)
                            {
                                // アラーム有効期日まで何日猶予があるかを確認する。
                                int _tmpAlarmLimitDays = (alarmItem.LimitDate - TodaysDate).Days;
                                if (_tmpAlarmLimitDays < 0)
                                {
                                    alarmItem.IsExpireLimitDate = true;
                                    itemListAlarmExpire.Add(alarmItem);
                                }
                                else if ((alarmItem.LimitDate - TodaysDate).Days < alarmRing)
                                {
                                    itemListAlarmExpire.Add(alarmItem);
                                }
                            }
                        }
                        if (itemListAlarmExpire.Count != 0)
                        {
                            formAlarmExpire = new FormAlarmExpire(itemListAlarmExpire, alarmType);
                            formAlarmExpire.ShowDialog();

                            if (!formAlarmExpire.IsDisposed)
                            {
                                formAlarmExpire.Dispose();
                            }
                        }
                    }
                }
            }
            manageConfigFile.ConfigFileError = false;
            InitializeControl();
        }
Beispiel #2
0
        private void alarmBackgroundWorker_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
        {
            if (itemListAlarmExpire.Count != 0)
            {
                formAlarmExpire = new FormAlarmExpire(itemListAlarmExpire, alarmType);
                formAlarmExpire.ShowDialog();

                if (!formAlarmExpire.IsDisposed)
                {
                    formAlarmExpire.Dispose();
                }
            }
            mainProgressBar.Value = 0;
        }