求回调函数的用法 主程序调用一个DLL里面的函数,这个DLL的函数里面又要用到主程序里的函数,这时候得用回调函数吧?不过我不知道该怎么用,看msdn也说不清楚,请达人指点。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你可以传一个函数指针到dll中, 然后在需要回调的时候通过函数指针调用. OnTimer就是一个回调函数不是直接在程序里面调用 回调函数就是函数指针,不一定是系统调用的才叫回调函数你在调用dll中的那个函数时,传入一个函数指针参数就可以了 可以通过SendMessage实现,或者通过公共基类实现 用函数指针传递就行了——谁说回调函数只能系统使用了typedef int(__stdcall*_lpMyProc)(char pa,void*pb);int oneproc(char pa,void*pb){ return 100;}_lpMyProc my;my=(_lpMyProc)oneproc;然后把这个 my传出去,DLL中定义也定义一个函数指针,接受使用,使用方式如下int getval=my('a',NULL); the same to AscendStone可以先定義一個函數指針類型typedef int(__stdcall*_lpMyProc)(char pa,void*pb);然後把這個指針變量傳入dll相應方法中的變量裏去參數類型就是你聲明的就可以了dll中int __stdcall MyProc(_lpMyProc proc)在主函數中_lpMyProc my=(_lpMyProc)oneproc;MyProc(m);這樣就把函數指針傳導dll中了。 想创建一个SECURITY_ATTRIBUTES,要求使对象在vista ie的保护模式下能访问 在程序中识别U盘里面一个文件 求职真郁闷 头文件与对象 如何画矩形和椭圆,但不填充区域? 有关cout的问题 请问在VC中怎么得到窗体中的Edit等控件的句柄? 请教高手有关数据访问中类型匹配的问题 从当前和长久来看,是用MFC开发COM好啊!还是用ATL开发COM好啊! 请介绍一本讲用ALT开发COM的书! udp的通讯问题 有没有程序员一边工作一边读自考的???会不会很累??
不是直接在程序里面调用
——谁说回调函数只能系统使用了
typedef int(__stdcall*_lpMyProc)(char pa,void*pb);int oneproc(char pa,void*pb)
{
return 100;
}_lpMyProc my;
my=(_lpMyProc)oneproc;然后把这个 my传出去,DLL中定义也定义一个函数指针,接受使用,使用方式如下
int getval=my('a',NULL);
_lpMyProc my=(_lpMyProc)oneproc;
MyProc(m);這樣就把函數指針傳導dll中了。