请问以post方式发送消息到消息处理函数该怎么实现?

调用一个相机的函数,按下开始按钮,开始数据传输后,PC端会创建一个数据接收线程,每接收到一帧数据都会调用一次 FrameRecvedCallback, 并以post方式发送消息到消息处理函数FrameRecvedMsgHandler进行图像数据处理。函数如下:

/* 带UI的数据帧接收回调, 以post方式发送消息, 在消息处理函数中操作数据帧 /
void __stdcall FrameRecved_Callback(uint cameraIp)
{
//以post方式发送消息
}

void FrameRecved_MsgHandler(uint cameraIp)
{

//锁定数据帧
const DataFrame
frame = LockDataFrame(cameraIp);
if (frame == NULL)return;

//操作数据帧
DataFrameHeader* header = frame->pHeader;

printf(",%05d", header->Index);
//解锁数据帧

UnlockDataFrame(cameraIp);
}
请问上述提到的post方式发送消息到消息处理函数的过程要怎么实现呢?

3个回答

你是不清楚,如何使用PostMessage?
你要大概了解一下windows的消息机制:
http://baike.baidu.com/link?url=4npOO0C6Cixs5MIZLY6P1bX9XqMFbAFMTQ9lHUs5aFWTLMpCm00_wYzMYfxQX9QRspeTenbytxO5F03VUGCv0_
https://msdn.microsoft.com/en-us/library/windows/desktop/ff381405(v=vs.85).aspx

然后你要自己定义,自定义消息:
因为不清楚你使用的框架,是否有mfc等,只能建议你看下:
https://msdn.microsoft.com/en-us/library/3yz7860h.aspx
https://msdn.microsoft.com/en-us/library/6d1asasd.aspx

u014610614
shuaishuai24 你好,我用的是QT
大约 4 年之前 回复

SendMessage/PostMessage函数,关键看你消息定义的uMsg wParam lParam参数有什么要求。

立即提问