百分问题:用DllImport("cxxxxxxxxx.dll") 引用一个dll文件,后找不到函数入口点,请赐教。
dll 文件是c++ 写的,c#引用代码如下:
[DllImport("xxxxxxx.dll", EntryPoint = "?addabc4@@YAXPAN@Z", CharSet = CharSet.Auto)]
static public extern void addabc(int a ,int b)
编译通过,运行时报错:未处理的 EntryPointNotFoundException 无法在 DLL“coordlib.dll”中找到名为“?LocalToWGS84@@YAXPAN@Z”的入口点。
开始以为是函数名改变 ,后来改了函数名 还是同样报错
原始文件有一个lib文件跟dll一起在vc++ 里是能用的,但是在vs2005 c#里 就出错。
--------------------编程问答-------------------- 函数名不能改的 --------------------编程问答--------------------
--------------------编程问答-------------------- 那个函数可能是输出的类函数,你用vc把那个函数封装一下,然后输出标准函数
/// <summary>
/// 滑鼠移動API
/// </summary>
/// <param name="X">X</param>
/// <param name="Y">Y</param>
/// <returns></returns>
[System.Runtime.InteropServices.DllImport("user32.dll")]
public static extern bool SetCursorPos(int X, int Y);
--------------------编程问答-------------------- http://topic.csdn.net/u/20070914/09/34b8b7dc-ad7f-4a43-8695-d464f4afbb2d.html
请参考此帖中我的回答...
绝对可以搞定...
^o^ --------------------编程问答-------------------- 一定要先把C++ -> addabc方法设置为输出函数... --------------------编程问答-------------------- mark
补充:.NET技术 , C#