我在一个单文档的MFC程序中使用多线程,但是在新建的线程函数中得到程序文档类的指针出错,请问如何在新线程中得到文档类的指针?
void CMyDoc::OnFileOpen()
{
……
THREADSTR* ptp=new THREADSTR;
AfxBeginThread(ThreadFunc,ptp);
……
}
UINT ThreadFunc(LPVOID pParam)
{
CMainFrame * pMainFrm = (CMainFrame*)AfxGetMainWnd();
CMyView* pView=pMainFrm->m_pView;
CMyDoc* pDoc=m_pView->GetDocument();//在这一步出错
……
……
}
void CMyDoc::OnFileOpen()
{
……
THREADSTR* ptp=new THREADSTR;
AfxBeginThread(ThreadFunc,ptp);
……
}
UINT ThreadFunc(LPVOID pParam)
{
CMainFrame * pMainFrm = (CMainFrame*)AfxGetMainWnd();
CMyView* pView=pMainFrm->m_pView;
CMyDoc* pDoc=m_pView->GetDocument();//在这一步出错
……
……
}
解决方案 »
- 用GDIplus画小方块,怎么样让这些小方块都在一个外面的大的椭圆里?
- 如何在MFC窗口的部分显示OpenGL?
- VS2008 Add Class报错:File xxxx.h is not in project
- IE工具条自定义按钮调用ActiveX
- CBCGMenuBar做的菜单,怎样设置菜单Enable???
- 怎么在VC里调试Shell
- 怎样改变对话框上某一个静态控件的字体大小,在线等待,救急!!!!!!!!!
- 如何sendmessage?
- opencv 实现的LK追踪,图像显示问题
- VC 检测USB接入的设备是什么设备?
- 做过网吧更新系统的哥们来,有钱赚哦
- [请问]关于对话框中的控件是如何管理的
将HWND交给工作线程。