C的dll回调C#函数 - .NET技术 / C#
c dll 接口代码
C/C++ code:
//回调函数
//times是回调次数
ZOKE_DLL_EXPORT int zoke_callback(test_object* object, int (*callback)(int), int times);
c#代码
C# code:
[DllImport("dll_test.dll", CharSet = CharSet.Ansi)]
unsafe public static extern int zoke_callback(test_object* obj, callback mycallback, int times);
public delegate int callback(int a);
private void button2_Click(object sender, EventArgs e)
{
unsafe
{
Class2.callback myCallBack = new Class2.callback(callbackfunc);
MessageBox.Show(myCallBack.ToString());
int result = Class2.zoke_callback(tobj, myCallBack, 1);
MessageBox.Show(result.ToString());
}
}
private int callbackfunc(int a)
{
MessageBox.Show(a.ToString());
return 10;
}
点击事件时出错:尝试读取或写入受保护的内存。这通常指示其他内存已损坏。估计是callback mycallback的问题,请高手出来帮忙一下。
抢个沙发哈!我是新手!
相关问答:
写了个测试程序如下
struct hostent *hp;
char AlarmDevIP[20];
int x2;
hp = gethostbyname("www.google.com");
if (hp)
{
......
请问VFP中如何调用C/C++函数?
你要调用什么功能的函数?要看看VFP中有没有对应的函数,如果有就省着再调用了。如果没有,可以将C/C++函数写个DLL或FLL,然后在VFP调用即可。
十豆三 老师,怎么才能修改自己的 ......
txt 和XML 格式相应
不借助DataSet
导入读取TXT文件
然后直接写入XML(同一文件,不同数据,递增原数据没有被覆盖情况下增加数据.)
教个要点或最好是有个代码提示的
过路好汉 帮个忙撒^^
不会,帮楼主 ......
在根目录/lib中存放一个log.c,log.h,并用下面的语句:
gcc -c log.c
ar crv liblog.a log.o
编译出一个liblog.a静态库,然后在文件夹:/testfile中创建一个test.c和testc.c,test.c中引用了testc.c中定义的方法 ......
公司开发一个触摸屏程序,我负责的一块,实现这样一个功能,当鼠标点击窗口中图片(一张图分成几部分)的其中一部分时,将这部分图片截取出来,弹出新的窗口,将截取出的图片显示出来。我使用Rectange类控制了返回, ......