C#操作注冊(cè)表二進(jìn)制數(shù)據(jù)
當(dāng)前位置:點(diǎn)晴教程→知識(shí)管理交流
→『 技術(shù)文檔交流 』
using System; using System.Text; using System.Windows.Forms; using Microsoft.Win32; namespace WindowsFormsApplication4 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } public static byte[] HexStringToByteArray(String hexString) { int start = 0; if (hexString[0] == ''0'' && (hexString[1] == ''x'' || hexString[1] == ''X'')) start = 2; byte[] bytes = new byte[(hexString.Length - start) / 2]; for (int i = start, len = hexString.Length; i < len; i += 2) bytes[i / 2] = Convert.ToByte(hexString.Substring(i, 2), 16); return bytes; } private void button1_Click(object sender, EventArgs e) { //打開注冊(cè)表 修改鍵值 RegistryKey key = Registry.CurrentUser.OpenSubKey(@"SOFTWARE\ORL\WinVNC3", true); var str = "bab3aefe 0f1125fb"; var bytes = HexStringToByteArray(str.Replace(" ", "")); try { //byte[] array = (byte[])key.GetValue("Password");//獲取Password值的字節(jié)數(shù)組 //string decoded = System.Text.Encoding.UTF8.GetString(array);//將字節(jié)數(shù)組轉(zhuǎn)換成字符串 //decoded = decoded.Replace("\0", String.Empty);//由于將字節(jié)數(shù)組轉(zhuǎn)換成字符串的過(guò)程中,一般會(huì)包含\0字符,所以要將它替換成空字符串,否則顯示會(huì)有問(wèn)題 //textBox1.Text = decoded; //byte[] bytes = (byte[])key.GetValue("Password"); //if (bytes == null || bytes.Length < 3) //{ key.SetValue("Password", bytes, RegistryValueKind.Binary); //} } catch { } MessageBox.Show("ok"); } } } 該文章在 2017/5/2 22:56:46 編輯過(guò) |
關(guān)鍵字查詢
相關(guān)文章
正在查詢... |