回调设置及调用方法
来源:互联网 发布:别哭了宝贝网络歌手 编辑:程序博客网 时间:2024/06/06 19:50
exe中定义回调函数
dll中定义回调函数
1
2
3
4
5
6
7
8
// 回调函数
typedef
void
(CALLBACK *fCallBack)(
PVOID
,
DWORD
);
VOID
CALLBACK RecvDataByCallback(_IN
PVOID
pvBuffer, _IN
DWORD
dwSize)
{
// 在exe中分配内存
PBYTE
pBuf =
new
BYTE
[dwSize];
memcpy
(pBuf , pvBuffer, dwSize);
// 拷贝DLL中pvBuffer里的数据到EXE中pBuf里
}
1
2
3
// 设置函数
// 该函数在DLL中定义并导出
SetRecvCallback((
PVOID
)&RecvDataByCallback);
dll中定义回调函数
1
2
3
4
5
6
7
// 接收回调函数地址并保存
typedef
void
(CALLBACK *fCallBack)(
PVOID
,
DWORD
);
fCallBack g_pCallback = NULL;
VOID
SetRecvCallback((
PVOID
)&RecvDataByCallback)
{
g_pCallback = (fCallBack)RecvDataByCallback;
}
1
2
3
4
5
6
7
// 接收是对操作
// 例如使用SOCKET,采用事件驱动时
case
FD_READ
// 抱歉,我好久没用SOCKET了,消息记不清了,这里是一个消息表示有数据到达
// 如接收UDP的数据
nLen=recvfrom(hSocket,buf,4096,0,(
struct
sockaddr*)&from,&nLength);
// 使用回调
g_pCallback((
PVOID
)buf, (
DWORD
)nLen);
0 0
- 回调设置及调用方法
- 黑马程序员------入学资格------方法的设置及调用
- MATLAB中调用Weka设置方法(转)及示例
- MATLAB中调用Weka设置方法(转)及示例
- 异步调用及回调
- css及js调用方法
- 类的方法及调用
- 对象的方法及调用
- init()方法调用及扩展
- JAVA 方法定义及调用
- RMI——Java远程过程调用(RPC)及回调方法
- MAC地址及设置方法
- MAC地址及设置方法
- NFS 设置方法及问题
- VS快捷键及设置方法
- pycharm使用及设置方法
- webView的常见设置及简单调用
- 百度地图调用及电子围栏设置
- Junit指定测试执行顺序
- 支持向量机的前世与今生
- go语言解析xml
- Android---recovery 资料搜集
- 单链表的java实现即链表的常见操作
- 回调设置及调用方法
- ZOJ 3080 ChiBi(SPFA,并查集)
- cocos2dx 2.2.* 内更新资源
- 链表与数组之比较
- 程序员编程语录
- Android编程笔记 GridView、ListView和ScrollView的嵌套冲突
- 如何将Mysql数据库的表结构导成Excel(带备注)
- Android开发环境搭建(jdk+eclip+android sdk)
- Theano 0.6 文档[1] - NumPy 复习