如何动态引用dll

feic 2004-10-19 09:58:37
问题是这样的

有两个项目a,b
现在A正在编写,B还未开始,但以后A肯定会使用B中的函数

请问如何在项目A中动态应用B的DLL或者EXE,以达到将来将B的DLL拷贝到相应目录下,并配置A的配置文件

以达到调用B中函数的方法

请高手指教
...全文
181 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
piaoyu581 2004-10-19
  • 打赏
  • 举报
回复
重新建一个解决方案,把这两个项目都添加进来,在项目- **属性里可以设置依赖关系和输出路径的,这样就不用每次拷贝了
tingpig 2004-10-19
  • 打赏
  • 举报
回复
我是这样写的
ObjectHandle objHandle = Activator.CreateInstanceFrom(strAssembly,strClass);//strAssembly是程序集名称,strClass是类名
Object obj = objHandle.Unwrap();
Type type = obj.GetType();
MethodInfo mi = type.GetMethod(strOp);//strOp方法名称
return (XdfDataSet)mi.Invoke(obj,parameters);//parameters参数列表

当然也可以用webservice,那样的话程序考虑起来简单一点,但是牺牲效率。
toplucky 2004-10-19
  • 打赏
  • 举报
回复
为B定义接口,使用接口来使用B的方法
brightheroes 2004-10-19
  • 打赏
  • 举报
回复
如果你一定要这样做
可以用反射来实现
Assembly a = Assembly.LoadFile(your.dll);
Type t = a.GetType(yourTypeName);
..............
athossmth 2004-10-19
  • 打赏
  • 举报
回复
B作为一个project编译为dll,A中引入为reference,然后代码中声明using,就可以了。
brightheroes 2004-10-19
  • 打赏
  • 举报
回复
如果是两个独立的系统,可以考虑WebService

brightheroes 2004-10-19
  • 打赏
  • 举报
回复
如果是两个独立的系统,可以考虑WebService

brightheroes 2004-10-19
  • 打赏
  • 举报
回复
这是两个独立的系统?
还是一个解决方案下面的两个相关的项目?

110,533

社区成员

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

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

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