......
......
function SendDataToComObject:Boolean;......
......    if SendDataToComObject = True then
    begin
      GetDataFromComObject;
      Update_DateValues;
      Set_Enabled(true,4);
      nFunctionID := 200;
      CloseProgressForm;
    end;
.......
......

解决方案 »

  1.   

    function SendDataToComObject:Boolean;
        if SendDataToComObject = True then是个递归算法吧,是不是出不来呀?如果是检查
          GetDataFromComObject;
          Update_DateValues;
          Set_Enabled(true,4);
          nFunctionID := 200;
          CloseProgressForm;
    这里哪句可以使SendDataToComObject = false  ;如果没有则自己加一句,在一定条件使SendDataToComObject可以等于 false
      

  2.   

    是因为在function SendDataToComObject:Boolean;
    里又调用SendDataToComObject ?
      

  3.   

    ......
    ......
    function SendDataToComObject:Boolean;......
    ......  try
        if SendDataToComObject = True then
        begin
          GetDataFromComObject;
          Update_DateValues;
          Set_Enabled(true,4);
          nFunctionID := 200;
          CloseProgressForm;
        end;
      finally
          if 忍无可忍=True then
            Result:=False;//jump out.
      end;
    .......
    ......
      

  4.   

    if SendDataToComObject = True  then
     没必要把 if SendDataToComObject then
     不明白楼主的意思