在我的应用程序中,我必须动态加载动态链接库。我已经使用DllImport属性动态加载了一个动态链接库。但我得到了以下异常。
System.EntryPointNotFoundException附加信息:在DLL zkemkeeper.dll‘中找不到名为"Connect_Net“的入口点。
这一例外的可能原因是什么?我该怎么处理这件事。请帮帮我。
以下是我的代码:
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
[DllImport("C:\\Windows\\SysWOW64\\zkemkeeper.dll", EntryPoint = "Connect_Net")]
public static extern bool Connect_Net(string IPAdd, int Port);
[DllImport("C:\\Windows\\SysWOW64\\zkemkeeper.dll", EntryPoint = "Disconnect")]
public static extern void Disconnect();
private void button1_Click(object sender, EventArgs e)
{
var res = Connect_Net("192.168.1.201", Convert.ToInt32(4370));
Disconnect();
}
}发布于 2014-05-14 16:09:45
对于这个错误,只有一个解释。也就是说,所讨论的DLL不导出名为Connect_Net的函数。出现这种情况的一些可能原因是:
使用dumpbin.exe /exports列出由DLL导出的函数。
发布于 2014-05-13 22:56:47
试着这样做(如果你对dll规范有正确的定义)。
[System.Runtime.InteropServices.DllImport(@"Your.dll", CallingConvention = System.Runtime.InteropServices.CallingConvention.StdCall)]
private static extern int GetWhatever(string vone, string vtwo, string vthree);https://stackoverflow.com/questions/23634554
复制相似问题