writeregstrでメモ履歴の変更ができないNo.06997
かわした さん 02/03/30 05:11
 
かわしたです。

メモの履歴が MemoHist00〜19 でレジストリに登録されていますが、
これをwriteregstrで変更することができないようです。

なんとなく仕様のような気がしますが、実際のところどうなんでし
ょう。マクロからメモを編集した際に履歴に追加することは不可能
なんでしょうか。

Windows XP Home Edition
鶴亀メール v1.75

[ ]
RE:06997 writeregstrでメモ履歴の変更がNo.06998
ひろ さん 02/03/30 12:35
 
 かわしたさん今日は、ひろです。
> メモの履歴が MemoHist00〜19 でレジストリに登録されていますが、
> これをwriteregstrで変更することができないようです。
 実際のマクロの内容は?

[ ]
RE:06998 writeregstrでメモ履歴の変更がNo.06999
かわした さん 02/03/30 17:42
 
かわしたです。

その後、色々試したところ writeregstr でレジストリの変更自体は
うまくいってるものの、それが鶴亀本体に反映されない(させる方法
がない?)だけのようです。

レジストリを変更してもメールの内部情報での履歴には反映されま
せんし、EnvChanged を実行したり鶴亀本体を終了したりすると変更
したレジストリの内容が元に戻ってしまいます。キャッシュとの整
合性を保つための仕様だとは思うんですが…

特別困っているわけではないので PushFindPack のような履歴追加
関数が欲しいといっているわけではありません。他に優先すべき
修正項目がたくさんあると思いますので。
# あれば使うとは思いますが(^^;


> 実際のマクロの内容は?

要ります? 今回の説明で実際のマクロは不要かと思いますが、一応
末尾にテストマクロをつけます。

EnvChanged のコメントがある状態と外した状態で実行して、本体の
メモの履歴やレジストリの内容を確認すると上記のような状態である
ことが確認できるかと思います。

--
openreg "CURRENTUSER","Software\\Hidemaruo\\TuruKame\\Config";
  writeregstr "MemoHist00","テスト";
closereg;
// loaddll "tkinfo.dll";
// #n = dllfunc("EnvChanged");
endmacro;

[ ]
RE:06999 writeregstrでメモ履歴の変更がNo.07000
秀まるお さん 02/03/30 23:28
 
 履歴はEnvChangedで読み込み直しされることは無く、しかも鶴亀メール終了時
に必ず書き換えられます。

 「全般的な設定」は変更したタイミングでレジストリに保存しますが、履歴や
ウィンドウ位置などの頻繁に書き換える情報については、メモリ上に保持してい
る内容を書き換えるたびにそれをレジストリにも反映したのでは遅くなるおそれ
がありまして、そういうことはしてないです。

 現状で、どうしてもその辺の値を書き換えたいなら、鶴亀メールから秀丸エデ
ィタを起動して、秀丸エディタ側で一度鶴亀メールプロセスを終了させ、レジス
トリを書き換えてから鶴亀メールをもう一度起動しなおすような処理が必要です。

 この辺のレジストリ書き換えの自由が効かないからといって、頻繁にレジスト
リを書き換える作りにすることは出来ません。

[ ]
RE:06999 writeregstrでメモ履歴の変更がNo.07001
ひろ さん 02/03/31 00:21
 
 かわしたさん今日は、ひろです。
> // #n = dllfunc("EnvChanged");
 どうやらこの関数の、
> ウィンドウの座標など、一部の項目についてはレジストリを書き換えても鶴
> 亀メール側には反映されない物があります。
この例外に、該当するようです。
 メモの履歴は、メールのプロパティのダイアログ・ボックスを表示する時
点で読み込んでいるでしょうから、
> キャッシュとの整
> 合性を保つための仕様だとは思うんですが…
これは考慮しなくてもよいですよね。メモの履歴は、ユーザが書き換えても
問題ないと思いますが、如何でしょうか?→秀まるおさん

[ ]
RE:07000 writeregstrでメモ履歴の変更がNo.07002
かわした さん 02/03/31 00:30
 
かわしたです。

詳しい説明ありがとうございました。仕様ということで納得できました。

[ ]
RE:07000 writeregstrでメモ履歴の変更がNo.07003
y.iida さん 02/03/31 10:46
 
>  「全般的な設定」は変更したタイミングでレジストリに保存しますが、履歴や
> ウィンドウ位置などの頻繁に書き換える情報については、メモリ上に保持してい
> る内容を書き換えるたびにそれをレジストリにも反映したのでは遅くなるおそれ
> がありまして、そういうことはしてないです。

FDに保存して持ち運ぶなど用途を考えると
動作が遅くなっても、iniファイルに保存するなどの設定が
あると便利かもしれませんね

[ ]