1、寻找dll文件的路径
public static string FindAssemblyPath(string assemblyName)
{
if (assemblyName.EndsWith(".dll") == false)
{
assemblyName = assemblyName += ".dll";
}
string file = assemblyName;
if (File.Exists(file) == false)
{
file = string.Format("{0}{1}", AppDomain.CurrentDomain.BaseDirectory, assemblyName);//如果有插件则判断是否在程序安装目录中
}
if (File.Exists(file) == false)
{
file = string.Format("{0}\\{1}", Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location), assemblyName);
}
return file;
}
2、load dll
public static Assembly LoadAssembly(string assemblyName)
{
string file = FindAssemblyPath(assemblyName);
Assembly assembly = Assembly.LoadFrom(file);
return assembly;
}