.NET 3.x Как притулить метод на выполнение с DLL , без ошибочного завершения как DLL не будет c EXE - C#
Формулировка задачи:
Как притулить метод на выполнение с DLL , без ошибочного завершения как DLL не будет c EXE
Это код библиотеки swich_lib.dll
Дело в том что если я вот притулил этот метод с библиотеки
в условии когда библиотека существует - все это нормально
но как только библиотеку уберу
то прога спляшет мне ошибку - не написав что библиотеки нету
тупо закроеться потому что метод что я всунул даст ошибку потому что библиотеки нету
- а это мне не надо
мне надо чтоб написало что библиотеки нету
и все , а когда библиотека появиться вот тогда выполняла метод
То есть метод выполнялся когда библиотека будет присутствовать
и не выполнялся когда библиотеки нету
и написало что библиотеки нету - при этом не закрывая прогу
и без ошибочного выхода с проги
Помогите может кто то знает , я не думал что это тяжело так будет
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Reflection;
using System.Text;
using swich_lib; // библиотека подключена
namespace ConsoleApplication4
{
class Program
{
static void Main(string[] args)
{
Console.BackgroundColor = ConsoleColor.DarkCyan;
Console.Clear();
Console.ForegroundColor = ConsoleColor.White;
Console.Title = "Тест библиотек";
Assambly_dll_exist("swich_lib.dll");
}
static void Assambly_dll_exist(string file_dll)
{
string fi = AppDomain.CurrentDomain.BaseDirectory + "\\" + file_dll;
Assembly dll = null;
if (File.Exists(fi))
{
dll = Assembly.LoadFile(fi);
test_class test = new test_class(); // объявляем класс библиотеки
test.metod_testy("Текст вывожу"); // метод библиотеки
}
else
{
Console.WriteLine("Библиотека отсутствует : " + fi);
Console.ReadKey(true);
}
}
}
}using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace swich_lib
{
public class test_class
{
public void metod_testy(string str)
{
Console.WriteLine(" Если этот текст вывело то значит");
Console.WriteLine(" библиотека проверена и метод metod_testy");
Console.WriteLine(" используеться шас выводя str в приложении");
Console.WriteLine(" ///////////////////////////////\n\n");
Console.WriteLine(str);
Console.ReadKey(true);
}
}
}Решение задачи: «.NET 3.x Как притулить метод на выполнение с DLL , без ошибочного завершения как DLL не будет c EXE»
textual
Листинг программы
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace MyLibrary {
public class Class1 {
public void Method() {
Console.WriteLine("O-LO-LO!");
}
}
}