Неустранимая ошибка при запуске приложения C # - PullRequest
1 голос
/ 18 ноября 2010

C # Visual Studio 2010 Express:

Когда мое приложение запускается, даже до отображения моего графического интерфейса, в диалоговом окне появляется следующая ошибка:


Неустранимая проблема: значение не может быть нулевым.
Имя параметра: источник


Похоже, это связано с некоторыми настройками пользователя в приложении. Я изменил тип настройки со String в StringCollection, но я не уверен, что это основная причина. Название «источник» также не звонит в колокольчик.

Проблема в том, что я не могу сломать приложение для отладки этой ошибки. Когда я нажимаю ОК, приложение запускается, но по какой-то причине все настройки пусты.

Спасибо за вашу помощь
Дэви

Ответы [ 3 ]

4 голосов
/ 18 ноября 2010

Лучший способ решить эту проблему - использовать отладчик, чтобы выяснить, откуда возникло исключение.Для этого попробуйте следующее

Отключить просто мой код

  • Инструменты -> Параметры -> Отладчик
  • Снимите флажок «Включить только мой код»

Включение исключений первого шанса

  • Отладка -> Исключения
  • Установите флажок «Брошено» для «Общих исключений времени выполнения»

Затем нажмитеF5, чтобы начать отладку вашего приложения.Это должно дать вам очень хорошее представление о том, где происходит ошибка и почему.

0 голосов
/ 18 ноября 2010

решаемые

Я заменил следующий код, который загружает мой внутренний SrcPathList из свойств:

*SrcPathList = new List(Properties.Settings.Default.SrcPathList.Cast()); // From StringCollection to List*

С этим:

if (Properties.Settings.Default.SrcPathList != null)
{
  SrcPathList = new List(Properties.Settings.Default.SrcPathList.Cast()); // From StringCollection to List
}
else
{
  SrcPathList = new List();
}

Это решило проблему, вызванную загрузкой пустого списка с нулевым значением

Спасибо всем за скорую помощь!

0 голосов
/ 18 ноября 2010

Включите настройку на перерыв во всех исключениях , а не только на необработанные.

Выполнение остановится прямо в точке, где выдается исключение, а не в диалоговом окне.

Вы вряд ли окажетесь в середине своего кода, но вы можете посмотреть на трассировку стека, чтобы понять, что происходит.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...