通りすがり 2019/05/04 01:06
ver2.2で設定が初期化されるので報告します。
検証した感じだと、
終了時に[system_new.ini]が排他制御されていると[system.ini]が生成されません。
そのため次の起動時では読み込む[system.ini]が存在せず初期値が表示されるっぽいです。
具体的にはDropboxなどで[system_new.ini]が読まれているタイミングで終了すると設定ファイルが消えます。
system.iniの削除タイミングを変えるか、
起動時にsystem_new.iniから参照するようにしたら良いんじゃないでしょうか。
あとついでに要望もお願いします。
新規メモ作成時にツリーの上でなく下に追加するようにしてほしいです。
Ctrl+Nを連打して上に伸びて行くのが解せない。
管理人 2019/05/05 23:15 (Res.1)
こんにちは。作者です。
不具合のご報告ありがとうございます。大変助かります。
初期化の不具合は詳しい情報を頂いているのに未だに修正できていません。申し訳ないです。
現在の設定の保存処理を大まかに説明しますと
(1)終了時に設定を一時的な「system_new.ini」に保存
(2)古い「system.ini」ファイルを削除
(3)「system_new.ini」を「system.ini」に名前変更
のようになっています。
> 終了時に[system_new.ini]が排他制御されていると[system.ini]が生成されません。
確かに排他モードで[system_new.ini]を作成しています。
正直、排他制御がなんなのか私はよく理解していませんでした^^;
ファイルを排他で扱うことでそれがどのように影響するのかそこまでは掴めていません。
> system.iniの削除タイミングを変える
> 起動時にsystem_new.iniから参照する
”初期化される”というのはsystem.iniが処理(2)で削除されていて、
(3)のsystem_new.iniの名前変更が失敗してそのまま残っているという状態ですね。
それならばsystem_new.iniから設定を読めばいいというわけですね。なるほど。
「system.ini」の中の[System]セクションの「IniSafeWriting」キーを 1(初期値) にしておくと
(1)〜(3)の手順で保存処理を行うようになっていますが、
値を 0 にすると「system.ini」の普通の上書き保存の処理になります。
もしかしたらDropboxなどと併用する場合はこちらの処理のほうが問題が少ないのかもしれません。
(余計な処理を増やしたことでバグも起きやすくなっている???)
自分で理解するためにいろいろと書いてしまいました^^;
過去に多数頂いたご報告ももう一度読み直しどういうロジックで初期化が起きるのかもっと調査してみます。
> Ctrl+N
初期状態では「前に追加」にCtrl+Nが割り当てられていますが
ショートカットキー設定から「後に追加」にキーを変更することが可能です。
メモ一覧の右クリックメニューの「メモを作成」は「前に追加」の機能と同じになっています。
2019/07/17 10:35 (Res.2)
ドロップボックスで同期していて、頻繁に初期化現象が起こっていたのですが
管理人様の書かれている
「system.ini」の中の[System]セクションの「IniSafeWriting」キーを 0にする、
をやって以来、まったく起こらなくなりました!
悩んでいる人はぜひ試してほしいです。