예제 #1
0
        public FrmRegValueEditString(RegValueData value)
        {
            _value = value;

            InitializeComponent();

            this.valueNameTxtBox.Text = RegValueHelper.GetName(value.Name);
            this.valueDataTxtBox.Text = ByteConverter.ToString(value.Data);
        }
예제 #2
0
        public FormRegValueEditBinary(RegValueData value)
        {
            _value = value;

            InitializeComponent();

            this.valueNameTxtBox.Text = RegValueHelper.GetName(value.Name);
            hexEditor.HexTable        = value.Data;
        }
예제 #3
0
        public FrmRegValueEditString(string keyPath, RegValueData value, Client c)
        {
            _connectClient = c;
            _keyPath       = keyPath;
            _value         = value;

            InitializeComponent();

            this.valueNameTxtBox.Text = RegValueHelper.GetName(value.Name);
            this.valueDataTxtBox.Text = value.Data == null ? "" : value.Data.ToString();
        }
예제 #4
0
        public FrmRegValueEditBinary(string keyPath, RegValueData value, Client c)
        {
            _connectClient = c;
            _keyPath       = keyPath;
            _value         = value;

            InitializeComponent();

            this.valueNameTxtBox.Text = RegValueHelper.GetName(value.Name);

            if (value.Data == null)
            {
                hexEditor.HexTable = new byte[] { };
            }
            else
            {
                switch (value.Kind)
                {
                case RegistryValueKind.Binary:
                    hexEditor.HexTable = (byte[])value.Data;
                    break;

                case RegistryValueKind.DWord:
                    hexEditor.HexTable = ByteConverter.GetBytes((uint)(int)value.Data);
                    break;

                case RegistryValueKind.QWord:
                    hexEditor.HexTable = ByteConverter.GetBytes((ulong)(long)value.Data);
                    break;

                case RegistryValueKind.MultiString:
                    hexEditor.HexTable = ByteConverter.GetBytes((string[])value.Data);
                    break;

                case RegistryValueKind.String:
                case RegistryValueKind.ExpandString:
                    hexEditor.HexTable = ByteConverter.GetBytes(value.Data.ToString());
                    break;
                }
            }
        }
예제 #5
0
        public FrmRegValueEditString(string keyPath, RegValueData value, ClientMosaique c)
        {
            _connectClient = c;
            _keyPath       = keyPath;
            _value         = value;

            //var serializer = new JavaScriptSerializer();

            //var result = serializer.DeserializeObject(value.Data);


            InitializeComponent();

            this.valueNameTxtBox.Text = RegValueHelper.GetName(value.Name);
            //if(value.Data == "\"\"")
            //{
            //    this.valueDataTxtBox.Text = "";
            //}
            //else
            //{
            this.valueDataTxtBox.Text = value.Data == null ? "" : value.Data.ToString();
            //}
        }
예제 #6
0
        public FrmRegValueEditBinary(string keyPath, RegValueData value, ClientMosaique c)
        {
            string[] convertToStrArr = null;
            byte[]   byteRewrited    = null;

            _connectClient = c;
            _keyPath       = keyPath;
            _value         = value;

            InitializeComponent();

            this.valueNameTxtBox.Text = RegValueHelper.GetName(value.Name);

            if (value.Data == null)
            {
                hexEditor.HexTable = new byte[] { };
            }
            else
            {
                if (value.Kind == RegistryValueKind.Binary)
                {
                    var      serializer           = new JavaScriptSerializer();
                    var      result               = serializer.DeserializeObject(value.Data);
                    object[] convertToObjectArray = (Object[])result;
                    byteRewrited = new byte[convertToObjectArray.Length];
                    int i = 0;
                    foreach (object obj in convertToObjectArray)
                    {
                        byteRewrited[i] = byte.Parse(obj.ToString());
                        i++;
                    }
                }
                if (value.Kind == RegistryValueKind.MultiString)
                {
                    var serializer = new JavaScriptSerializer();
                    var result     = serializer.DeserializeObject(value.Data);
                    var objVal     = (Object[])result;
                    convertToStrArr = new string[objVal.Length];
                    int i = 0;

                    foreach (object obj in objVal)
                    {
                        convertToStrArr[i] = obj.ToString();
                        i++;
                    }
                }

                switch (value.Kind)
                {
                case RegistryValueKind.Binary:
                    hexEditor.HexTable = (byte[])byteRewrited;
                    break;

                case RegistryValueKind.DWord:
                    try
                    {
                        var serializer = new JavaScriptSerializer();
                        var result     = serializer.DeserializeObject(value.Data);
                        hexEditor.HexTable = ByteConverter.GetBytes((uint)(int)result);
                    }catch { }
                    break;

                case RegistryValueKind.QWord:
                    hexEditor.HexTable = ByteConverter.GetBytes((ulong)(long.Parse(value.Data.ToString())));
                    break;

                case RegistryValueKind.MultiString:
                    hexEditor.HexTable = ByteConverter.GetBytes((string[])convertToStrArr);
                    break;

                case RegistryValueKind.String:
                case RegistryValueKind.ExpandString:
                    hexEditor.HexTable = ByteConverter.GetBytes(value.Data);
                    break;
                }
            }
        }