レジストリの読み込み、ルート(?)部分の値の取得

解決


たけした  2013-11-13 23:11:22  No: 45551

こんにちは。

いつもお世話になっております。
開発環境は、win7(sp1)、delphiXE3(update適用なし)です。

レジストリの読み込みについて教えて下さい。

こちら↓を見てレジストリの読み込み方法はわかったのですが、
http://blog.livedoor.jp/boon_net/archives/50714090.html
ルート(?)の値を取得するには、どうしたら良いのでしょうか?

ルートという表現が正しいのかわかりませんが、例えばレジストリの
書き出しを行った時に、こうやって↓表示された場合、
この@に入っている値を取得したいです。

    Windows Registry Editor Version 5.00
  
    [HKEY_LOCAL_MACHINE\SOFTWARE\TAKE]
    @="\"C:\\Program Files\\take\\take.exe\"

よろしくお願いいたします。


deldel  2013-11-14 01:56:44  No: 45552

質問がよくわからないのですが、例えば以下のようにデータを取得してます。

var
  Reg: TRegistry;
  sGetData: string;
begin
  Reg := TRegistry.Create;
  try
    Reg.RootKey := HKEY_CURRENT_USER;
    Reg.OpenKey('Software\Borland\Delphi\6.0', False);
    sGetData := Reg.ReadString('Version');
    Reg.CloseKey;
  finally
    Reg.Free;
  end;

  showmessage(sGetData);
end;


おに  2013-11-14 02:08:00  No: 45553

レジストリエディタとかで見たときに「(既定)」となってる値を取得したいのだとしたら。
deldelさんのコードの
 sGetData := Reg.ReadString('Version');

 sGetData := Reg.ReadString('');
にしたら読めるかと。


たけした  2013-11-14 02:23:14  No: 45554

>レジストリエディタとかで見たときに「(既定)」となってる値を取得したい
これでした。

取得できました。
おにさん、deldelさん、ありがとうございました。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加