C#如何调用C#写的DLL 用DllImport
C#怎么调用C#写的DLL 用DllImport
错误 无法在 DLL“test.dll”中找到名为“XX”的入口点。用DllImport哦,,
------解决思路----------------------
为什么要用dllimport,你应该添加引用后直接调用,或者用反射,如果你想动态加载的话。
也不是绝对不可以用dllimport,但是实在复杂,你需要将这个类库作为com暴露,然后通过标准的com api(比如cocreateinstance等创建类型,再调用方法,这个说起来就不是几句话了。)
------解决思路----------------------
你这个是C#写的DLL,托管代码,直接添加引用,然后导入命名空间就可以了。一般是C++写的com组件才会像你那样去调用的,所以不需要这么麻烦了
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace test
{
public class Class1
{
public static string XX()
{
return "Hello";
}
}
}
[DllImport("test.dll", CharSet = CharSet.Auto)]
public static extern string XX();
private void Form1_Load(object sender, EventArgs e)
{
MessageBox.Show( XX() );
}
错误 无法在 DLL“test.dll”中找到名为“XX”的入口点。用DllImport哦,,
------解决思路----------------------
为什么要用dllimport,你应该添加引用后直接调用,或者用反射,如果你想动态加载的话。
也不是绝对不可以用dllimport,但是实在复杂,你需要将这个类库作为com暴露,然后通过标准的com api(比如cocreateinstance等创建类型,再调用方法,这个说起来就不是几句话了。)
------解决思路----------------------
你这个是C#写的DLL,托管代码,直接添加引用,然后导入命名空间就可以了。一般是C++写的com组件才会像你那样去调用的,所以不需要这么麻烦了