我用控制台建一工程,在里面用到Settimer,每隔几秒调用另一函数,因无窗体,不知怎么调用那个函数,望指教。最好放个例子,谢谢!

解决方案 »

  1.   

    在settimer中使用回掉函数可以实现
      

  2.   

    具体如下:
    SetTimer(NULL, 0, 1000, (TIMERPROC)TimerHandler);VOID CALLBACK TimerHandler( HWND hwnd,
        UINT uMsg,
        UINT_PTR idEvent,
        DWORD dwTime
    )
    {
        //处理事情
    }
      

  3.   

    http://search.csdn.net/Expert/topic/1422/1422546.xml?temp=.5501825
      

  4.   

    你在任何一个想要启动你OnTime函数体内的算法的地方,输入
    SetTimer(mTimerId, 3000 , NULL);
    其中3000是三秒,mTimerId是你要启动的标志OnTimer(UINT UEventID)
    {
       if( UEventID == mTimerId )
       {
          //开始你的算法执行
       }
    }
      

  5.   

    回调函数是Void的,如果我想返回一个值,有什么好的方法?
      

  6.   

    二楼的还有hwnd????,是console!!!
    三楼的方法比较一般常规,可以考虑
    四楼的还有OnTimer ,no mfc,console!!!
    不过Timer的专业控制函数是sdk中的 SetWaitableTimer()功能强大
      

  7.   

    如果回调函数是void的
    那么可以在OnTimer中这样写:
    KillTimer(...);
    你的函数();
    SetTimer(...);
    我都是这样写的