我在从二进制注册表项中获取值时遇到问题。到目前为止我的代码是
string key = "UserPreferencesMask";
string key_place = @"Control Panel\Desktop";
RegistryKey root = Registry.CurrentUser;
root = root.OpenSubKey(key_place);
var byte_value = root.GetValue(key);
byte[] bytearray = byte_value as byte[];
//How can convert byte [] array to 64 bit binary string
klase.Close();
MessageBox.Show(binary_string);
当我想要的时候我被堆叠
UserPreferencesMask
二进制注册表项,用于转换 64 位二进制字符串。像这样的东西
9E3E078012000000
十六进制值
1001111000111110000001111000000000010010000000000000000000000000
二进制值
但是,如果我构建从十六进制转换为二进制的代码,如果十六进制数字中的前一个或两个或多个零数字,我的二进制值就会出错。二进制返回没有第一个零数字,仅从第一个字节值开始计数 1 ,如果十六进制以任何其他字符开头没有错误,除了 0 我该如何解决问题?我到处搜索,但我发现只有十六进制到二进制。,但这对我来说会导致错误,并且返回的值不是 64 位值长度。谢谢 !