1. ホーム
  2. c#

[解決済み] C#を使用してレジストリ値が存在するかどうかを確認する方法は?

2023-07-10 03:33:18

質問

どのようにC#コードでレジストリ値が存在するかどうかを確認するには? これは私のコードです、私は'Start'が存在するかどうかをチェックしたい。

public static bool checkMachineType()
{
    RegistryKey winLogonKey = Registry.LocalMachine.OpenSubKey(@"System\CurrentControlSet\services\pcmcia", true);
    string currentKey= winLogonKey.GetValue("Start").ToString();

    if (currentKey == "0")
        return (false);
    return (true);
}

どのように解決するのですか?

レジストリキーについては、取得後に null かどうかを確認することができます。存在しない場合は、そうなります。

レジストリの値については、現在のキーの値の名前を取得し、この配列が必要な値の名前を含んでいるかどうかをチェックすることができます。

public static bool checkMachineType()
{    
    RegistryKey winLogonKey = Registry.LocalMachine.OpenSubKey(@"System\CurrentControlSet\services\pcmcia", true);
    return (winLogonKey.GetValueNames().Contains("Start"));
}