static COperateSock* m_Op;VOID CALLBACK TimerProc(HWND hwnd,UINT uMsg,UINT idEvent,DWORD dwTime)
{
m_Op->RegisterToMain();
}void COperateSock::ServerCrListen()
{
m_Timer=::SetTimer(NULL,1,40000,TimerProc);
}
在RegisterToMain();中,好像很多事都不能做,那位知道这儿有什么限制吗?
我准备在里面做socket连接,不成功再重试

解决方案 »

  1.   

    把你的::SetTimer(NULL,1,40000,TimerProc);改为
    SetTimer(1,40000,TimerProc);
      

  2.   

    error C2660: 'SetTimer' : function does not take 3 parameters我想在服务开始的时候就用socket连接上
    可是这样服务没法启动用时钟等一会再连接,结果在TimerProc里没法连接
      

  3.   

    那你用多线程吧,应为你的基类不是CWnd所以不能使用SetTimer() + OnTimer