DllImport的使用

nikolaichow 2012-06-13 08:27:18
有一DLL,代码如下:
namespace DLLTest
{
public class Invoker
{
public bool Invoke(int k)
{
if (k < 1)
return true;
else
return false;
}
}
}

我想外部调用这个DLL文件,这个文件没有给REGSVR32注册,并且我不想通过DLL引用,而通过DllImport,不知道如何实现。
这个DLL文件是其他EXE使用,随EXE文件夹转移,可能非固定,我想在新程序外部设定这个DLL的路径,然后通过DllImport调用,谁能解答一下?
...全文
37 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
__天涯寻梦 2012-06-13
  • 打赏
  • 举报
回复
就以顶楼代码为例
Assembly asm = Assembly.LoadFile(dll文件路径);
string typeName = "DLLTest.Invoker";
Type ikt = asm.GetType(typeName);
MethodInfo ikm = ikt.GetMethod("Invoke", BindingFlags.Instance | BindingFlags.Public);
object ins = asm.CreateInstance(typeName);
bool result = (bool)ikm.Invoke(ins, new object[] { 0 });
nikolaichow 2012-06-13
  • 打赏
  • 举报
回复
反射加载能详细说明吗?最好有代码。
[Quote=引用 1 楼 的回复:]

这是 C# 的 dll ? 通过反射加载吧
[/Quote]
__天涯寻梦 2012-06-13
  • 打赏
  • 举报
回复
这是 C# 的 dll ? 通过反射加载吧

110,571

社区成员

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

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

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