[delphizip] Re: FSpecArgs.Add

  • From: Alistair George <bigal@xxxxxxxxxx>
  • To: Russell Peters <delphizip@xxxxxxxxxxxxx>
  • Date: Sun, 1 Dec 2002 12:03:48 +1300

Hello Russell,
Am doing another backup now without ongetnextdisk. In my ongetnextdisk routine
was a disk erase proceedure. I also see that in my fspecsargs if the cleardisk
option was checked that:  AddOptions := AddOptions + [AddDiskSpanErase]
So that when the next disk was to be processed it had a double erasure - once
with zipmaster and second by my own erase procedure. Maybe this is the
problem will advise.

QUESTION: is there a way to PAUSE a backup in progress?
Thanks,
Al+

Sunday, December 1, 2002, 10:07:07 AM, you wrote:

RP> If used on a secondary thread there are problems with the lines
RP> "Application.ProcessMessages" (maybe other places too)
RP> A quick 'fix' would be to add a test before it (except in callback) to make
RP> them
RP> if ForegroundTask then
RP>     Application.ProcessMessages;

RP> not certain if this is your problem, but it hit me when I was looking
RP> through the source looking for CheckForDisk and IsDiskPresent.
RP> Russell Peters
RP> http://www.users.bigpond.com/russellpeters/delphizip.html
RP> ----- Original Message -----
RP> From: "Alistair George" <bigal@xxxxxxxxxx>
RP> To: "Russell Peters" <delphizip@xxxxxxxxxxxxx>
RP> Sent: Saturday, November 30, 2002 6:40 PM
RP> Subject: [delphizip] Re: FSpecArgs.Add


>>
>> Hello Russell,
>> I have been wrong many a time but suspect the following is interfering
RP> with
>> backup to CDRW:
>> function TZipMaster.IsRightDisk(drt: Integer): Boolean;
>> var
>>     Ext: string;
>> begin
>>     Result := False;
>>     // For fixed disks the disk is always right, we only need to change
>>     // the filename.
>>     if (drt = DRIVE_FIXED) or (drt = DRIVE_REMOTE) then //or (drt =
RP> DRIVE_CDROM) then
>>
RP> HERE......................................................^^^^^^^^^^^^^^^^^^
RP> ^^^
>>
>> Also, am getting error overflow and wondered if it could be caused by the
>> following (label FROM HERE):
>> procedure TZipMaster.GetNewDisk(DiskSeq: Integer);
>> var
>>     drt: Integer;
>> begin
>>     drt := DRIVE_REMOVABLE;
>>     FileClose(FInFileHandle);           // Close the file on the old disk
RP> first.
>>     FDiskNr := DiskSeq;
>>     repeat
>>         if FInFileHandle = -1 then
>>         begin
>>             if (drt <> DRIVE_FIXED) and (drt <> DRIVE_REMOTE) then
>>                 ShowZipMessage(DS_NoInFile, '')
>>                     // This prevents and endless loop if for some reason
RP> spanned parts
>> // on harddisk are missing.
>>             else
>>                 raise E_ZipMaster.CreateResDisp(DS_NoInFile, True);
>>         end;
>>
>> FROM HERE
>>         repeat
>>             FNewDisk := True;
>>             drt := CheckForDisk(false);                 // 1.70 changed
>>         until IsRightDisk(drt);
>> TO HERE?????
>>
>>         // Open the the input archive on this disk.
>>         FInFileHandle := FileOpen(FInFileName, fmShareDenyWrite or
RP> fmOpenRead);
>>     until not (FInFileHandle = -1);
>> end;
>>
>> Could the repeat loop be polling and causing an overflow?
>> --
>> Regards,
>>  Alistair+
>>
>>
>>





-- 
Regards,
 Alistair+


Other related posts: