TRegistry の使い方

提供: Appmethod Topics
移動先: 案内検索

Ini ファイルとシステム レジストリの操作 への移動

Windows 専用アプリケーションを記述する場合で、システム レジストリの構造に慣れているなら、System.Win.Registry.TRegistry を使用することができます。 他の ini ファイル コンポーネントの同じプロパティやメソッドを使う、TRegistryIniFile と異なり、TRegistry のプロパティやメソッドは、システム レジストリの構造に直接対応付けられます。 TRegistry を使用すると、ルート キーおよびサブキーの両方を指定できるのに対し、TRegistryIniFileHKEY_CURRENT_USER をルート キーとして使用します。

キーの開く、閉じる、保存、移動、コピー、削除を行うためにメソッドに加え、TRegistry では、使用したいアクセス レベルを指定することも可能です。

メモ: TRegistry は、クロスプラットフォーム(Windows)プログラムでは使用できません。

次の例では、レジストリ エントリから値を取得しています:

Object Pascal:
 
 function GetRegistryValue(KeyName: string): string;
 var
   Registry: TRegistry;
 begin
   Registry := TRegistry.Create(KEY_READ);
   try
     Registry.RootKey = HKEY_LOCAL_MACHINE;
 
     // 存在しない場合は作成しないので、False
     Registry.OpenKey(KeyName, False);
 
     Result := Registry.ReadString('VALUE1');
   finally
     Registry.Free;
   end;
 end;
C++:
#include <Registry.hpp>

AnsiString GetRegistryValue(AnsiString KeyName) {
	AnsiString S;
	TRegistry *Registry = new TRegistry(KEY_READ);
	try {
		Registry->RootKey = HKEY_LOCAL_MACHINE;
	 // 存在しない場合は作成しないので、False
		Registry->OpenKey(KeyName, false);
		S = Registry->ReadString("VALUE1");
	}
	__finally {
		delete Registry;
	}
	return S;
}

関連項目

コード サンプル