RegDiv 
御久々のこのコーナーの更新っっ。
満を持してお送りしますのは「RegDiv」(笑)

さてさて。ちょっと長くなりそうな気配がするので,
お時間のある時にごゆるりとどぞ(笑)
ごちゃごちゃ説明は要らん,すぐに URL を教えろ,という場合はここをクリック(笑)→URL までスキップ

さて,事の発端ってのは,とある ML で,バックアップ / リストアの話がでたことなのね。
Windows って長く使ってくると,どんどん調子が悪くなってきたりする。
一番いいのは再インストールってことになるんだけれども,さてこの再インストール,
みんなあまりやりたがらない。
その理由を考えてみる。

でるがこの間旧マシンに Windows95 を入れたときのように,リカバリ CD-ROM に頼らず,
素の状態からやろうとすると,やれドライバがないやら,やれ CD-ROM ドライブが認識しないとか,
まぁ,ほんといろいろ困難にぶち当たったりするのだけれど(笑),
最近はリカバリ CD-ROM がついてくるので,それを利用すればインストール自体はそんなにしんどくはない。

ただし,リカバリ CD-ROM は単に工場出荷状態に戻してくれるだけで,
その後に入れたアプリなどについては全部自分で入れ直しになるので少し面倒。
ま,でも,これまた最近はインストーラーも完備なので,CD-ROM の setup.exe を押せば,
あとは勝手にインストールしてくれるアプリがほとんどで,
それを考えたらこれも多少の時間はかかるけど,そんなに手間っちゅーほどでもない。

じゃぁ,みんなが再インストールをしたがらない一番大きな理由ってなんだってゆっと,
要するにカスタマイズして自分なりに使いやすくした状態に復元するという作業が
とてつもなく面倒だから,なんである(笑)

特にでるのように,アプリを入れたら何はともあれ,まずメニューバーを開きまくり,
「オプション」とか「設定」の項目を探して,判る範囲で全て自分好みに変えてしまい,
デフォルトで使ったことなんかないぞってな人間にとっては,
その状態に戻すというのを考えただけで,あーもうやりたくない,と思ってしまうのであった(笑)

さて,各アプリケーションのカスタマイズされた情報をどこで管理するかというと,
1.INI ファイル管理型(解凍したら即使えるよタイプに多い)
2.レジストリ管理型(インストーラーでインストールするよタイプに多い)
に分けられると思う。

INI ファイル管理型は,exe と同フォルダに,同じ名前の ini があって,
そこにカスタマイズされた内容が記述されてるわけ。
なので,再インストールしたときには,フォルダごとコピー&ペーストするだけで OK 。
楽楽である(笑)

さて,レジストリ管理型,
たいていはレジストリキーの HKEY_CURRENT_USER\Software 以下に
そのソフト名であるとか,作者名であるとかでキーが作られている。

# 例えばにししさんの「Fumy Web Diary」だったら,
# HKEY_CURRENT_USER\Software\nishishi\WebDiary というところにカスタマイズ項目が
# ちゃんと入っている。

つまり,フリーウェアやシェアウェア,パッケージウェアなどのレジストリは,
たいてい HKEY_CURRENT_USER\Software か HKEY_LOCAL_MACHINE\Software に入っていて,
(もちろんここ以外にもいろんな所に書き込んでいるパターンがあるわけだけど),
とりあえず,ここ以下を押さえておけば OK (笑)

# たまに,全然関係無いキー名だったりするから,そゆときは根性で探さねばならない(笑)

ところが,OS の再インストールをするとこの項目が全て消えるので,
その前にこの部分をバックアップしておかなければならない。
要するに,レジストリファイルを書き出し,あとでそれを読み込む(結合する)んである。

方法は,さっき書いたように自分の保存しておきたいアプリのレジストリを見つけ,
そのキーを左クリック(1 回)し選択したのち,
メニューバーから [レジストリ]-[レジストリの書き出し] を選び,
あとで読み込むときに何のアプリケーションのレジストリ情報だったか
思い出せるように判りやすい名前で名前を付けて保存。

拡張子が .reg のファイルが出来るので,OS インストールし直したら,
それをダブルクリックか右クリックから「結合」を選ぶというわけ。

ところが,考えてみて欲しい。
レジストリ管理型アプリの数だけレジストリキーがあるわけで,
例えばうちだと,なるべくフリーウェアは,INI ファイル管理型を選んでいるにも関わらず,
HKEY_CURRENT_USER\Software 以下のキーは実に 60 超だ(爆笑)
HKEY_LOCAL_MACHINE\Software 以下で 50 超。
ぅがーって感じではありませんかっ。
ちゅーことはだよ,両方合わせて単純に考えても 110 回以上,書き出し作業をしなくてはならない。
私はそこまで暇ではありませんってなもんじゃないですか(笑)

だからといって,HKEY_CURRENT_USER\Software だけ,とかまとめてとってしまうと,
書き戻すときに,全部要らないアプリまで書き込まれてしまう可能性がある。
それも困る。よね?(笑)

じゃ,どうするかってゆっと,でるは,
HKEY_CURRENT_USER\Software だけまとめて取っておいて,
あと,自分で必要な分だけ「切り出す」という方法を使っている(笑)
.reg ファイルは,単純なテキストファイルなので,エディタで開ける。
先のにししさんのソフトを例に取ると,

[HKEY_CURRENT_USER\Software\nishishi]

というキーを探し,これがキーの先頭部分にあたるので,
そこからずっと下がり,次のアプリケーションの先頭キーが出て来るまでをコピー。

これを新規テキストに貼り付け,行頭に REGEDIT4 と書きこむ。
これを書かないとレジストリデータとして認められないのでお忘れ無く。
んで,それを,拡張子「.reg」として保存し,ダブルクリックで復元てわけ。

110 回以上書き出し作業をするよりは,はるかに楽に思える,
んがしかしっ,これも,かなり面倒であることは違いない(笑)
なんせ,過不足無くコピーしなければならないので,結構神経使う。

あぅ(涙)
やっぱり 110 回書き出すか?(涙)

そこで,考える。
今でるがやっていることを自動的にやってくれるソフトってないかな?とね(笑)
でも,これって,ありそうで,ない。
無いのだ。
# 「連続置換君」を suzuki さんに作ってもらったときの経緯と似ている(笑)
# そんなんばっかりなんかいっっ(笑)<でる

みんなせっせと切り出ししてるんでしょうか(笑)
それとも,でるみたいにカスタマイズの鬼ではないんでしょうか。

ま,どちらにしても,無いならば,なんとかしなければなりません。
いつもの如く,頭の中に具体的に思い浮かびます,が,
今回もちょっと自分では作れそうにもない。
# HSP で,そこまで作れるほどの力が無い故…<でる

となればっっっ,お願いするしかありません(笑)

こういう文字列系を扱わせればピカ一な方が頭に浮かぶ〜(笑)
TeraPadの外部ツールでお馴染みの「たてごと♪」さん。
思わず Email に書いてしまいました(笑)

レジストリの事なんだけど,.reg で書き出した時に,

HKEY_CURRENT_USER\Software

以下を全部書き出して一つの .reg にするでしょ,
んで,そこから,一つ一つの階層 -- 例えば,

HKEY_CURRENT_USER\Software\Adobe
を親とする階層(行)をひとまとめ,
HKEY_CURRENT_USER\Software\Macromedia
を親とする階層(行)ひとまとめ,
っていう風に切って,それぞれ先頭に「REGEDIT4」を付けて分解する,
っていうの,って難しい?

何がしたいかというと(笑)

HKEY_CURRENT_USER\Software 以下ってキーがいっぱいあるんだけど,
全部,一つ一つについて「書き出し」というのが大変で,
まとめて取り出した .reg から,分解出来たらいいなぁって思って。

考えたやり方は,
ファイルの先頭から検索して,最初に [が出て来る行の [] 内を
キーワードとするのね。
例えば,

[HKEY_CURRENT_USER\Software\Macromedia]

とあれば,HKEY_CURRENT_USER\Software\Macromedia が最初のキーワード

次に,そこから下に進んで,
行頭が [で始まっていること,と HKEY_CURRENT_USER\Software\Macromedia
というのが行に含まれるか,とを調べて
[で始まっているけれども HKEY_CURRENT_USER\Software\Macromedia で始まっていない
最初の行,が次の親キーの始まり,とみなして,その前で一区切りする,

んで,別ファイルに書き出すんだけど,その時のファイル名は,
キーワードの,最後から遡って \ までの単語
HKEY_CURRENT_USER\Software\Macromedia
                       ↑この部分だけを使う。
そして,文書の先頭に「REGEDIT4」を付けて保存。
以下,繰り返し。

ってな感じ。

書くのは簡単(笑)<何をしたらいいか
しかし,これ HSP では途方もないものになりそうで(笑)

そういうのって,やっぱり大変?

いぁまぁ,ほんと,我ながら読み返すと すごい Email ですね(笑)
そこまでロジック考えられるんなら自分でやれよ,ってな感じですが(笑)<でる

さて,この Email を送って翌日の夕方に,出来上がってきました。<「RegDiv Ver.0.01」
ひぁー,すごい。さすがっっ。
出来上がってきたものは,でるが想像していた通りのもので万々歳。
旧マシンの復旧時にはこれ,めちゃ役に立ちましたの。

そこで,ふと思います。
でるだけが使ってるのもったいないぢゃん。

で,書いてみました。

公開してみたらどうかな?

控えめな たてごと♪さんはおっしゃいます。

> どうだろう。
> ニーズあるのかな (笑)


なので,でるがいつも切り出すときにやる方法を書いて,

で,これって切り出しの部分,みんなたぶん面倒(怖い)から,
あまり挑戦しようとは思わないかもしれないけど,
たてごと♪さんの「RD」つかったらそゆの気にしなくていいでしょう?
結構ニーズあると思うんだけどなァ。
初心者っていうよりも,中級者以上になるかもしれないけど(笑)


> 初心者向けだったら、レジストリからデータ引っ張ってくるとこまで実装しな
> いといけませんね (笑)


あはは(笑)ほんとだね。
全自動レジストリから software 情報切り出しますツール(笑)
ありそうで,ないなぁ。そゆのって。


> RegDiv でやってみようかな。

てなわけで(笑)
「RegDiv」の Ver.0.02 で,自動的に書き出して保存してくれるツールになりました(笑)
そして,めでたく一般公開でっす♪

いぁー,前フリ思っきり長いですけど(爆笑)
でもね,それだけ面倒なことを,この「RegDiv」は一発でやってくれちゃうわけで,
こりゃもぉ,使うっきゃないって感じっしょ(笑)

転ばぬ先のバックアップ。
これは大事(笑)
レジストリのバックアップツールはあるけれど,
全レジストリのバックアップだから,結局再インストールしたときには使い道が無かったって人や,
各アプリのレジストリのバックアップなんて面倒でって放ったらかしてた人。
是非とも「RegDiv」使ってくださいなっ♪
便利さは,旧マシンの OS 再インストール時に,でるが身をもって証明いたしました(笑)

「RegDiv」の作者(たてごと♪さん)の Web Page
http://harpy.org/Tategoto/
→ Enter → To Find My Way → One Step Each →★ RegDiv ★


「RegDiv」の特徴
・ Windows のレジストリキー HKEY_CURRENT_USER\Software
 ないし HKEY_LOCAL_MACHINE\Software を読み,
 一般的な REGEDIT4 形式のレジストリ (.reg) ファイルとして保存します。
・キーの名前によって、それぞれ別々のファイルに保存されます。
 分割パターンは、2 種類から選択できます。
・特定のレジストリキーの出力を抑止できます。
March 06, 2001
Tategoto is here.のバナー