怎么发消息给非模态对话框

如何发消息给非模态对话框?
Create了很多非模态对话框(显示复制文件进度),每个对话框初始化时创建了一个工作线程进行复制文件,在线程中如何将复制文件的进度发送消息给对话框?
对话框 消息 多线程 进度条 复制文件

------解决方案--------------------
在线程中要能取得对话框的句柄指针,然后对这个指针SendMessage发送消息。
------解决方案--------------------
PostMessage,找到对应对话框窗口句柄
------解决方案--------------------
使用postmessage,
------解决方案--------------------
既然线程中已经知道句柄,能不能不断的直接修改对话框中某个变量,同时在对话框中建个定时器不断检测变量的变化。
------解决方案--------------------
// 定义自定义消息
#define WM_ON_INIT_MSG WM_USER+100

// 要响应消息的对话框cpp文件中
BEGIN_MESSAGE_MAP(COptionsDepthDlg, CDialog)
ON_MESSAGE(WM_ON_INIT_MSG,InitData) // 将自定义消息与实际的消息响应函数进行绑定
END_MESSAGE_MAP()

// 消息响应函数
LRESULT COptionsDepthDlg::InitData(WPARAM wParam,LPARAM lParam) 
{
}

// xxx.cpp中

// 发送消息给COptionsDepthDlg对话框。 
// m_SubForms.m_Forms[0]->GetSafeHwnd()存放的是COptionsDepthDlg对话框的句柄
::SendMessageW(m_SubForms.m_Forms[0]->GetSafeHwnd(),WM_ON_INIT_MSG,0,0);