各位老大,小弟用Apro做传真系统,当发送的文件大于17张时就发不出去,比如给传真号码12345678发送17的APF文件,这时就发不出去了,不知道各位有没有碰到过这种问题?

解决方案 »

  1.   

    唉,怎么都没人回答呀?
    我的代码如下(是由《delphi串口及语音传真高级编程》上介绍的知识扩展而得的):
    procedure TSendFaxThread.MyApdSendFaxFaxNext(CP: TObject; var APhoneNumber,
      AFaxFile, ACoverFile: TPassString);
    var
      S : String;
      CaretPos : Byte;
      slFaxFileName:tstringlist;
    begin
      slFaxFileName:=tstringlist.Create;
      if FaxList.Count = 0 then Exit;
      try
        S := FaxList[FaxIndex];
        CaretPos := Pos('^', S);
        APhoneNumber := Copy(S, 1, CaretPos-1);
        S := Copy(S, CaretPos+1, 255);
        CaretPos := Pos('^', S);
        if CaretPos = 0 then
        begin
            slFaxFileName.Clear;
            while pos(';', S) <> 0 do
            begin
              slFaxFileName.Add(trim(copy(S, 0, pos(';', S) - 1)));
              S := copy(S, pos(';', S) + 1, length(S) - pos(';', S));
            end;
            slFaxFileName.Add(trim(S));
            ApdSendFax.FaxFileList.Assign(slFaxFileName);
            ApdSendFax.ConcatFaxes(filepath+'\temp\'+APhoneNumber+'.apf');
            AFaxFile := filepath+'\temp\'+APhoneNumber+'.apf';
            ACoverFile := '';
        end
        else
        begin
          AFaxFile := Copy(S, 1, CaretPos-1);
          ACoverFile := Copy(S, CaretPos+1, 255);
        end;
        Inc(FaxIndex);    errPNumber:=APhoneNumber;
        errFName:=AFaxFile;
        errCName:=ACoverFile;
      except
        errPNumber:=APhoneNumber;
        errFName:=AFaxFile;
        errCName:=ACoverFile;    APhoneNumber := '';
        AFaxFile := '';
        ACoverFile := '';
      end;
      slFaxFileName.Free;
    end;
    为何当要传真的文件大于17张时就传真不出去了呢?各位有没有碰到过这样的情况?