tbs0336.pp 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. {$mode objfpc}
  2. Uses classes,sysutils;
  3. const dsmerged=0;
  4. dsopenerror=1;
  5. dscreateerror=2;
  6. dsconverterror=3;
  7. dsmismatcherror=4;
  8. dscrcerror=5;
  9. dserror=6;
  10. type tvsmergediffs=class
  11. procedure execute;
  12. end;
  13. tvsdiffitem= class
  14. status : longint;
  15. end;
  16. EMismatchedDiffError =class(exception);
  17. EDiffCrcCompareError= class(exception);
  18. procedure TvsMergeDiffs.Execute;
  19. var
  20. Stream: tFileStream;
  21. Item: TvsDiffItem;
  22. a : longint;
  23. begin
  24. try
  25. Item.Status := dsMerged;
  26. except
  27. { Only the number of on xx do statements seems to matter, not
  28. which ones, try commenting 3 or 4 out}
  29. on EFOpenError do Item.Status := dsOpenError;
  30. on EFCreateError do Item.Status := dsCreateError;
  31. on EConvertError do Item.Status := dsConvertError;
  32. on EMismatchedDiffError do Item.Status := dsMismatchError;
  33. on EDiffCrcCompareError do Item.Status := dsCrcError;
  34. on Exception do Item.Status := dsError;
  35. end;
  36. end;
  37. begin
  38. end.