Некоторые юзеры не полностью распаковывают архив с программой и дллками, если библиотеки не будет в папке с программой, то она будет некорректно работать или вообще не откроется. Идём в класс Program.cs, добавляем директиву System.IO для работы с файлами (using System.IO) Далее ищем метод Main(), в самом начале вставляем: if (!File.Exists("xNet.dll")) { MessageBox.Show("Отсутствует xNet.dll! Эта библиотека должна лежать вместе в папке с программой! Нажмите ОК, чтобы скачать архив с программой и DLL"); Application.Exit(); return; } Code if (!File.Exists("xNet.dll")) { MessageBox.Show("Отсутствует xNet.dll! Эта библиотека должна лежать вместе в папке с программой! Нажмите ОК, чтобы скачать архив с программой и DLL"); Application.Exit(); return; } Вместо xNet.dll вставляем нужную вам библиотеку =)
AnyBoom, если это делать в форме, то будет расход лишних ресурсов компьютера. Зачем загружать форму, если нет нужных длл?)
Есть пизже способ через AppDomain, там что то типа такого { AppDomain.CurrentDomain.AssemblyResolve += ResolveEventHandler; } private static Assembly ResolveEventHandler(object sender, ResolveEventArgs args) { // В args вся информация об отсутствующей сборке } Code { AppDomain.CurrentDomain.AssemblyResolve += ResolveEventHandler; } private static Assembly ResolveEventHandler(object sender, ResolveEventArgs args) { // В args вся информация об отсутствующей сборке } Так же в Program.cs все это делается. Тут же можно сделать OpenFileDialog что бы пользователь сам цепанул сборку :O