プログラム上でレジストリの.regファイルをインポートしたいと思います
プログラム上で”REG IMPORT”コマンド、regedit.exeを使用しインポートできることは
知っていますが、
コマンドを使用せずに、プログラム上で実装(レジストリをオープン、書き込み)した
いと思っています。
参考になる(使用できる)オープンソースを探していますがなかなか見つかりません。
もし、ソースをご存知の方がいましたら教えていただけないでしょうか?
コマンドで実装しない理由は個人的な嗜好の問題ですが、最終的にソースが見つからな
い場合は、
全て自作か、あきらめてコマンドで実装します(最終手段)
ATLのCRegKeyテンプレートクラスを使えばレジストリ操作は簡単に出来ます。
ソースは検索すれば簡単に見つかるんじゃないでしょうか。
返信ありがとうございます。
エクスポートに関しては、ソースを見つけたので参考にさせていただいていますが、
特にインポートに関してのソースを見つけることが出来ませんでした。
今現在は自作でregファイルを解析して、プログラム上からレジストリの書き込みを行う
ようにしています。
問題を切り分けましょう。
(1) レジストリ キーを開いて、値を書き換える
(2) .reg ファイルを解析して、値を読み込む
(1) のソースならいくらでも見つかると思います。
(2) は見つけにくいかもしれませんね。
CRegKey には .reg ファイルをインポートする機能はなさそうです。
フォーマットは(最初の1行を除けば).ini ファイルと同じなので、
GetPrivateProfileString 系の API が使えないでしょうか。
もうちょっと噛み砕いて書きますと、例えば、以下の 2 つの処理はそれぞれ別個に作る
ことができます。
(1) 特定のキーの特定の値に A という値を書き込む
(2) .reg ファイルを読んで、特定のキーの特定の値が A であるということを知る
分けられるということは、
(X) .reg ファイルを読み込んで、その値をレジストリに書き込む
というまとまった処理よりも、一度に気にするべきことが少なくて済むということで
す。
一般に、処理の粒度を小さくした方が、サンプルが見つかりやすいですし、作りやすく
なりますし、バグも減ります。
心がけてみてください。