在时钟中断函数里调一个activeX控件方法, 出现异常MIOGetData() called by thread 4340 but no TLS index allocated下面是调用代码
int CALLBACK Cdemo1Doc::HighTimerCallProc(UINT wTimerID, UINT msg,DWORD dwUser,DWORD dwl,DWORD dw2)
{
CDemoDlg* Ptr = (CDemoDlg*)dwUser; //控件在CDemoDlg对话框里
Ptr->GetData();//用指针调取数据函数发生异常,GetData()里用了控件的取数据函数,发生异常 return 0;
}怎么解决?
int CALLBACK Cdemo1Doc::HighTimerCallProc(UINT wTimerID, UINT msg,DWORD dwUser,DWORD dwl,DWORD dw2)
{
CDemoDlg* Ptr = (CDemoDlg*)dwUser; //控件在CDemoDlg对话框里
Ptr->GetData();//用指针调取数据函数发生异常,GetData()里用了控件的取数据函数,发生异常 return 0;
}怎么解决?
解决方案 »
- 我想订阅《程序员》杂志,要求填写会员号。会员号在哪里找?
- 如何使对话框中的控件通过分隔符隔开?
- 屏幕监控问题
- 求救呀,分不够再加!!怎样编程来检测scsi硬盘的拔出插入!
- 请教,如何在VC++6.0中连接到SQL Server2000数据库中制定的表中?! 急急!
- 这种情况,怎么用CPropertySheet
- 我要毕业了,想找vc的工作,各位帮我看看情况怎么样,谢谢了
- 1。请问如何指定回答我问题的人给分啊?2。如何在程序中改变菜单的名称?先谢谢了
- MFC使用 odbc连接Access,怎么才可以不要注册数据源就可以拉
- ToolBar中如何设置每一个Button的大小?
- 在static控件上用textout()
- 如何通过ocx界面上的按钮来关闭网页
if(Ptr)
{
Ptr->GetData();//用指针调取数据函数发生异常,GetData()里用了控件的取数据函数,发生异常
}
异常实际是发生在GetData()里的m_mcbConnection.GetData
m_mcbConnection是控件对象变量。VARIANT vaData;
try
{
sumOfnumber=0;
int ChannelNumber=8192;
memset(SpectrumData, 0, ChannelNumber);
vaData = m_mcbConnection.GetData(0, ChannelNumber);
你这么用,有可能是在其它线程中调用了COM组件导致了问题吧。
ATL里不也是都用消息来处理的。延迟不了太多。总比出错强。:)