| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Общие вопросы по .NET и C# > Если нет dll, которая указана в using |
| Автор: Lamya 14.1.2011, 12:50 | ||
| К exe-шнику приложения прилагаются 3 библиотеки. Одна из них указана в перечислении using (using System; using System.Collections.Generic; using System.Reflection; using xLib;) и она в свою очередь не работает без двух других. Необходимо обработать ситуацию отсутствия любой из библиотек. Обработка отсутствия двух вспомогательных - таким кодом, здесь вопросов нет.
Если удалить из каталога саму xLib, то приложение запускается, но в процессе возникает окно исключения ************** Текст исключения ************** System.IO.FileNotFoundException: Невозможно загрузить файл или сборку "xLib, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" или один из зависимых от них компонентов. Не удается найти указанный файл. Имя файла: "xLib, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" Какой обработчик необходимо написать, чтобы вместо окна появлялось обычное текстовое сообщение, как и где перехватить ошибку? |
| Автор: jonie 14.1.2011, 13:34 |
| Вот это событие обрабатывать: http://msdn.microsoft.com/en-us/library/system.appdomain.assemblyresolve.aspx |
| Автор: Lamya 14.1.2011, 15:05 | ||
Спасибо за ответ. Попробовала через код примера, он почему-то отказался извлечь класс из сборки, но сам факт ее отсутствия находил. В итоге сделала еще проще:
Там не нужна сложная система контроля ошибок, только сообщение о том, что не все гладко, так что такой вариант вполне сойдет несмотря на его топорность. |