1

C# で、レジストリ キーの値を取得しようとしています。バイナリキーです。私が使用しているコード

RegistryKey regKey = Registry.LocalMachine;
            regKey = regKey.OpenSubKey(@"Software\Wow6432Node\Bohemia Interactive Studio\ArmA 2 OA\");

            if (regKey != null)
            {
                string value = regKey.GetValue("KEY").ToString();
                Console.WriteLine(value);
            }
            else
            {
                return;
            }

コンソールに書き込むと、出力されるのはSystem.Byte[]. キーの正確な値を出力するにはどうすればよいですか? 私は何を間違っていますか?

4

2 に答える 2

2

byte[]値はバイナリであるため、キャストして値を取得するだけです。

byte[] value = (byte[])regKey.GetValue("KEY");

2 進数を表示するには、2 桁の 16 進数で表示できます。

 for (int i = 0; i < value.Length; i++)
     Console.Write(" {0:X2}", value[i]);
于 2013-03-29T06:41:58.207 に答える
0

取得する値regKey.GetValue("KEY")はバイト配列の場合があります。

この記事のようにHEXに変換することを検討してください

于 2013-03-29T06:38:06.610 に答える