none
奇怪的if(offhookfalg)函数! RRS feed

  • 问题

  • 1 if(offhookfalg)
     {
      dlg->SendMessage(WM_CLOSE,0,0);
      //delete dlg;
      sheet2=new CMySheet2("编辑");
      ASSERT(sheet);
      page3= new CPage3;
      page4=new CPage4;
      sheet2->AddPage(page3);
      sheet2->AddPage(page4);
      sheet2->Create();
      afnum.TrimLeft();
      afnum.Format("%d",2000);
      
      MessageBox("运行到这!");
     
      if(TV_StartDialEx((LPTSTR)(LPCTSTR)afnum,TRUE,FALSE))
              {
                 //m_OffHookCheck.SetCheck(1);
              }
      SetTimer(2,5000,NULL);
     }

      2   afnum.Format("%d",2000);//这是放到if外面的代码,当我把if注释掉后用他来测试TV_StartDialEx是否执行!
     if(TV_StartDialEx((LPTSTR)(LPCTSTR)afnum,TRUE,FALSE))
     {
     //m_OffHookCheck.SetCheck(1);
     }
     SetTimer(2,5000,NULL);
    说明!
    offhookfalg 是控制if部分里的代码是否执行的标志,afnum 是一个全局变量,在另一个类里定义,也没什么问题!

    我不知道为什么第1部分在if里面TV_StartDialEx 死活不能执行,但是一移到if外面就可以了(见第二部分) ,所以我以为是if 的原因,直接用if(1==1)
    这下又可以执行,但是换成if(offhookfalg),TV_StartDialEx  这个函数又不行了,MessageBox可以正常的弹出,郁闷死我了!!请问这是为什么啊?
    TV_StartDialEx  是调用的一个dll里面的函数!

    2009年4月6日 4:48

答案

全部回复