将700K字符.Hex文件加载到RichTextBox中。异常处理中PC配置的差异

时间:2016-01-18 07:41:21

标签: c# error-handling richtextbox nullreferenceexception

我在桌面应用程序中将一个相对较大的文件加载到RichTextBox中。

我尝试过很多在网络上看到的解决方案,包括LoadFile,ReadToEnd,ReadAllText和......

它们在我的PC(以及一台类似配置的PC)上工作正常,延迟相当小。

但是在公司的其他PC上,我发布的应用程序只是冻结了加载文件,有时会显示错误。

错误提到问题在CRC.Form1.OpenFile()

    private void OpenFile()
    {
        OpenFileDialog _ofd = new OpenFileDialog();
        _ofd.Title = "Open Document";
        if (inputComboBox.SelectedItem == "From File (bare Hex)")
        {
            _ofd.Filter = "Text Files|*.txt|Hex Files|*.hex|Hxd Files|*.hxd|ROM Files|*.rom";
        }
        else if (inputComboBox.SelectedItem == "From File (Intel Hex)")
        {
            _ofd.Filter = "Hex Files|*.hex|Hxd Files|*.hxd|Text Files|*.txt|ROM Files|*.rom";
        }
        _ofd.FileName = string.Empty;
        if (_ofd.ShowDialog() == DialogResult.OK)
        {
            if (_ofd.FileName == String.Empty)
            {
                return;
            }
            else
            {
                //_LBA = 0;
                //StringBuilder oSB = new StringBuilder();
                //string _line;
                //inputTextBox.LoadFile(_ofd.FileName,RichTextBoxStreamType.PlainText);
                //FileStream _fs = new FileStream(_ofd.FileName, FileMode.Open);

                //using (StreamReader oStreamReader = new StreamReader(_ofd.FileName))
                //{
                //    while ((_line = oStreamReader.ReadLine()) != null)
                //    {
                //        inputTextBox.AppendText(_line+ "\n");
                //    }
                    //oSB = File.ReadAllLines(_ofd.FileName);
                    inputTextBox.Text = File.ReadAllText(_ofd.FileName);
                    //inputTextBox.Text = oStreamReader.ReadToEnd();
                    //inputTextBox.Text = oSB.ToString();
                //}
            }
        }
    }

此文件立即加载到Notepad ++中。

有谁知道应该做些什么来使这种加载更快(可能是即时的)并解除不同PC中的行为差异?

请记住,我的某些电脑没有任何问题。

Here is a screenshot from the error in other PCs

0 个答案:

没有答案