Example #1
0
        private void showEvidenceData(Int64 from)
        {
            Int64 length = 16 * (Int64)((textBox2.Height - textBox2.Margin.Top - textBox2.Margin.Bottom) / (textBox2.Font.GetHeight() + 1));

            string text = "";

            if (selectedEvidence == null)
            {
                return;
            }
            vScrollBar1.Value   = (int)(from / 16);
            vScrollBar1.Maximum = (int)(selectedEvidence.Size() / 16);
            byte[] data = selectedEvidence.Data(from, length);

            for (int c = 0; c < data.Length; c += 16)
            {
                text += String.Format("{0:x6}  ", from + c);

                string dataString = "";
                for (int i = 0; i < 16; i++)
                {
                    if (c + i >= data.Length)
                    {
                        if (i % 2 == 0 && i != 0)
                        {
                            text += " ";
                        }
                        text       += "  ";
                        dataString += " ";
                        continue;
                    }
                    if (i % 2 == 0 && i != 0)
                    {
                        text += "-";
                    }
                    text += String.Format("{0:x2}", data[c + i]);


                    if (data[c + i] > 0x20)
                    {
                        dataString += (char)data[c + i];
                    }
                    else
                    {
                        dataString += ".";
                    }
                }

                text += ": " + dataString + "\r\n";
            }
            textBox2.Text = text;
        }