RegistryKey.GetValue メソッド (String, Object)
指定した値を取得します。指定した値が見つからない場合は、既定値を取得します。
Overloads Public Function GetValue( _
ByVal name As String, _ ByVal defaultValue As Object _) As Object
[C#]
public object GetValue(stringname,objectdefaultValue);
[C++]
public: Object* GetValue(String* name,Object* defaultValue);
[JScript]
public function GetValue(
name : String,defaultValue : Object) : Object;
パラメータ
- name
取得する値の名前。 - defaultValue
name が存在しない場合に返す値。
戻り値
name に関連付けられたデータ。name が見つからない場合は defaultValue 。
例外
例外の種類 | 条件 |
---|---|
SecurityException | このユーザーには、RegistryPermission.SetInclude(read, currentKey) アクセス許可がありません。 |
ObjectDisposedException | 操作対象の RegistryKey が閉じています。閉じられたキーにはアクセスできません。 |
ArgumentException | 操作対象の RegistryKey が存在しません。 |
解説
文字列 name では、大文字と小文字は区別されません。
特定の registrykey の既定値を取得するには、name に null 参照 (Visual Basic では Nothing) または空の文字列 ("") を指定できます。
レジストリから取得される値は、DWORD、バイナリ、または文字列です。文字列値は、次のカテゴリとして表されます。
- sz: データは、null で終わる Unicode 文字列値として表されます。
- multi_sz: データは、null で終わる Unicode 文字列の配列として表されます。
- expanded_sz: データは、環境変数への展開された参照を含む null で終わる Unicode 文字列として表されます。
メモ REG_SZ の値を取得する場合、reg_sz 値が展開された値を表すことがあります。この場合、必要に応じて値を展開する ExpandEnvironmentVariables を呼び出してください。
SetValue を使用する場合は、保存する値型を指定できません。代わりに、渡される情報のデータ型に基づいてデータが解釈されます。文字列は expanded_sz 値ではなく、sz 値として解釈されます。
メモ GetValue を使用して PerformanceData キーの値を返すことはできません。これは、GetValue を実行するたびにこのデータのサイズが異なる可能性があり、このメソッドでは正しいサイズの値を取得するためのバッファを割り当てることができないからです。元のパフォーマンス データにアクセスするには、代わりに PerformanceCounters を使用します。
使用例
[Visual Basic, C#, C++] 次のコード例は RegistryKey クラスの例の一部です。
' Delete the non-secure password value.
testSettings = test9999.OpenSubKey("TestSettings", True)
testSettings.DeleteValue("password")
' Verify the deletion.
Console.WriteLine(CType(testSettings.GetValue( _
"password", "Password not found."), String))
testSettings.Close()
[C#]
using(RegistryKey
testSettings = test9999.OpenSubKey("TestSettings", true))
{
// Delete the non-secure password value.
testSettings.DeleteValue("password");
// Verify the deletion.
Console.WriteLine((string)testSettings.GetValue(
"password", "Password not found."));
}
[C++]
// Delete the non-secure password value.
testSettings = test9999->OpenSubKey(S"TestSettings", true);
testSettings->DeleteValue(S"password");
// Verify the deletion.
Console::WriteLine(dynamic_cast<String*>(
testSettings->GetValue("password", S"Password not found.")));
testSettings->Close();
[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン をクリックします。
必要条件
プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ
.NET Framework セキュリティ:
- RegistryPermission (レジストリから読み取りを行うために必要なアクセス許可) Read (関連する列挙体)
- EnvironmentPermission (REG_EXPAND_SZ 型のレジストリ キーを読み取るために必要なアクセス許可) PermissionState.Unrestricted (関連する列挙体)
参照
RegistryKey クラス | RegistryKey メンバ | Microsoft.Win32 名前空間 | RegistryKey.GetValue オーバーロードの一覧 | GetValueNames | SetValue | DeleteValue | ValueCount | GetSubKeyNames