c#怎么动态调用别的程序写的dll啊

lmpeel 2005-11-30 04:35:49
就是文件名是未知的,
...全文
207 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
echoxue 2005-12-01
  • 打赏
  • 举报
回复
也可以用到C#中的属性。
[DllImport("你要用的.dll",EntryPoint="method",ExactSpelling=false,CallingConvention=CallingConvention.Cdecl)]
public static extern string method();
在C#程序中就可以调用method()函数了。
runnercn 2005-12-01
  • 打赏
  • 举报
回复
System.Activator.CreateInstanceFrom(...),其中...为你想要调用的类和其他一些信息。这个调用就比较方便
lw8122 2005-12-01
  • 打赏
  • 举报
回复
关注,留名
echoxue 2005-12-01
  • 打赏
  • 举报
回复
用到反射机制,可以用Assembly.Load("你要用的DLL")


Assembly assembly = Assembly.Load("你要用的DLL");
Type type = assembly.GetType("DLL中类的命名空间"+"DLL中的类名(你说的动态的类名)");

// 対象初期化
object obj = Activator.CreateInstance(type);

然后就可以用(DLL中的类名)obj 转出得到对象,就可以调用了,也可以用其它的方法。。。。
lmpeel 2005-12-01
  • 打赏
  • 举报
回复
不是这个意思,我是说文件名是在运行期动态取得的
tiaoci 2005-11-30
  • 打赏
  • 举报
回复
文件都不知道,那怎么调啊?

至少要知道要调用的运行代码在什么地方吧?

com 对象么还有个GUID可以查对应的dll呢

110,539

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧