C# 怎么调用一个未知的.dll文件???

来源:百度知道 编辑:UC知道 时间:2024/05/29 18:29:31
比如说我写了一个类,里面有一些方法,我把这个类编译成dll文件。

我的主程序事先不知道有这个类,现在只知道dll文件的路径和名字,那怎么把这个dll文件加载到内存里,并实例化然后使用呢?

也就是说主程序是事先写好的,dll文件是新写的,如果不改变主程序而能够调用新写的dll文件。
不太会,给个例子呀大哥。

怎么使用反射呀。

使用反射。
object objType = Assembly.Load(path).CreateInstance(参数);

详细的可以查看一下帮助,其实很简单的

--------------------------------------
下面是msdn上的一个例子:
using System;
using System.Reflection;
using System.Reflection.Emit;
using System.Threading;
using System.Runtime.Remoting;

class App {
static Assembly TypeResolveHandler(Object sender, ResolveEventArgs e) {
Console.WriteLine("In TypeResolveHandler");

AssemblyName assemblyName = new AssemblyName();
assemblyName.Name = "DynamicAssem";

// Create a new assembly with one module
AssemblyBuilder newAssembly =
Thread.GetDomain().DefineDynamicAssembly(assemblyName, AssemblyBuilderAccess.Run);
ModuleBuilder newModule = newAssembly.DefineDynamicModule("DynamicModule");

// Define a public class named "ANonExistentType" in the assembly.