风空雪:void ThreadFunc()
{
CTime time;
CString strTime;
m_bRun=TRUE;
while(m_bRun)
{
time=CTime::GetCurrentTime();
strTime=time.Format("%H:%M:%S");
::SetDlgItemText(AfxGetMainWnd()->m_hWnd,IDC_TIME,strTime);
Sleep(1000);
}
}
这段代码中 ::SetDlgItemText()的参数AfxGetMainWnd()函数没办法获取到数据。是否应该设置一个全局变量,或者还有其他的函数可以调用?
(发表于2006-11-7 14:09:00)
风空雪:我用的是VS 2005
(发表于2006-11-7 14:42:00)
shaoyingzhe:我用的也是那个环境也有相同的问题
只要在原代码上作小小的改动就可以了,将::SetDlgItemText(AfxGetMainWnd()->m_hWnd,IDC_TIME,strTime);
改为这个:SetDlgItemText(AfxGetApp()->m_pMainWnd->m_hWnd,IDC_TIME, strTime); 就可以了
(发表于2006-11-14 20:54:00)
htlxiao:我用的也是vs2005,程序在createthread的时候就会出错,读取内存错误,直接终止了程序,不知道怎么回事?
(发表于2006-11-20 15:07:00)
htlxiao:搞错了,原来和你门的问题一样
(发表于2006-11-20 15:22:00)
11000011:需要把相应句子修改为
CTime time=CTime::GetCurrentTime();
CString strtime=time.Format("%H:%M:%S");
就行了,你们难道没发现 例子strTime没有任何的值吗?
不相信用AfxMessageBox(strTime)看看,实际上什么没有,因为错在获取当前时间的方法上错了
(发表于2006-12-1 23:10:00)
gprs-2005:
在如何传送一个一个整型的参数到一个线程中,以及如何等待一个线程完成处理例子中,为何编译不过去.
(发表于2007-5-16 15:21:00)
堕落一代:(LPTHREAD_START_ROUTINE) 在函数中添加这个就能编译过去了
(发表于2007-8-21 11:56:00)
livingpark:shaoyingzhe 正解,非常感谢!
(发表于2007-10-25 13:43:00)
weiyan:很郁闷,老是出现这样的错误
obj : error LNK2001: unresolved external symbol
该怎么办啊
(发表于2008-6-24 21:59:00)
..........................................................................
--------------------next---------------------