定时哪错了?没起作用             if(qi==0||shui==0||t>=45) 
{
            SetTimer(1,600000,NULL);   OnTimer(600000);
  {
          FILE* fp;
          fp=fopen("test.dat", "a");           
       
  fputs("当前时间为:",fp);
  fprintf(fp,"%s \n",str);

  fputs("氮气压力为:",fp);
  fprintf(fp,"%  d  ",qi);            fputs("冷却水压力为:",fp);
      fprintf(fp,"%  d  ",shui);   fputs("摄像头温度为:",fp);
  fprintf(fp,"%  d",t);   
     fputs("℃\n",fp);   fputs("**************************************************************\n",fp);
  fclose(fp);
  }

解决方案 »

  1.   

    OnTimer是个消息事件,应该从ClassWizard中生成,你怎么写成OnTimer(600000),这是什么东西啊????????
      

  2.   

    我在ClassWizard中添加了OnTimer,然后再程序中加入了SetTimer(1,600000,NULL);语句
    但是根本就没有起作用,我就在网上搜了搜,我理解OnTimer()是一个函数,但括号里放什么东西我不知道。此函数响应定时到的事件
      

  3.   

    他是想启动600000这个Timer.
    是吗?
      

  4.   

    没有起作用,应该是还没有报警信息出现啊。你的SetTimer是在if(qi==0||shui==0||t>=45) 条件下启动。如果没有异常,就不会启动了。你应该在系统启动时,就调用SetTimer,然后在OnTimer中调用if(qi==0||shui==0||t>=45) 判断,如果异常,才输出异常信息。
      

  5.   

    他是想启动600000这个Timer.
    是吗?
      

  6.   

    OnTimer(600000);????太奇怪了.楼主先找一本书好好看看.
    要不问题太难解决了.
      

  7.   

    if(qi==0||shui==0||t>=45) 
    {
                SetTimer(1,600000,NULL);    OnTimer(600000);
                {
                   //执行定时到的程序
                 }
    }
      

  8.   

    你推荐一本书
    是不是应该这样    OnTimer(1);
    启用定时器1
      

  9.   

    OnTimer是个事件!!!你SetTimer后,程序自己会响应这个函数,不要你自己去调用什么OnTimer!!!!你怎么就不明白呢。。
      

  10.   

    这样对了吧?
    错误提示是什么原因造成的?                
                    if(qi==0||shui==0||t>=45) 
           {       
     
             SetTimer(1,600000,NULL);   

            }             void CComdlg::OnTimer(UINT nIDEvent) 
         {
                                  FILE* fp;
                        fp=fopen("test.dat", "a");           
           
      fputs("当前时间为:",fp);
      fprintf(fp,"%s \n",str);

      fputs("氮气压力为:",fp);
      fprintf(fp,"%  d  ",qi);            fputs("冷却水压力为:",fp);
                fprintf(fp,"%  d  ",shui);   fputs("摄像头温度为:",fp);
      fprintf(fp,"%  d",t);   
         fputs("℃\n",fp);   fputs("**************************************************************\n",fp);
      fclose(fp);
              CDialog::OnTimer(nIDEvent);
    }
      

  11.   

    local function definitions are illegal
      

  12.   

    就是因为你乱些OnTimer造成的啊。
      

  13.   

    鼓励 luyuri(luyuri)多看些书