Craig Peterson

Show:

What's happening?

  • TurboPower Abbrevia

    capeterson committed revision 228 to the TurboPower Abbrevia SVN repository, changing 1 files.

    2009-11-14 04:20:40 UTC in TurboPower Abbrevia

  • Abbrevia produces invalid CAB archives

    Rohangreg's change in rev 119 to set IsDirty broke CAB creation. The following code produces an invalid CAB: OutCab := TAbCabArchive.Create('Copy.cab', fmOpenWrite); try OutCab.Load; OutCab.AddFiles('*.*', faAnyFile); OutCab.Save; finally OutCab.Free; end;.

    2009-11-12 02:48:30 UTC in TurboPower Abbrevia

  • Followup: RE: Zip into Parts

    The zip standard defines the way the filenames are generated. If you change them other zip utilities like WinZip and Explorer won't be able to extract anything from them. If that isn't an issue you can set the OnRequestImage event handler. Just pass back whatever filenames you want when that's called and Abbrevia will use them, no renaming necessary. Craig.

    2009-11-11 19:07:26 UTC in TurboPower Abbrevia

  • Followup: RE: Zip into Parts

    The SpanningThreshold unit is bytes. I couldn't find any code that enforced a minimum, but definitely don't go below 64KB. Here's some sample code that shows how it works: Zip := TAbZipper.Create(nil); try Zip.FileName := 'C:\Split.zip'; Zip.BaseDirectory := 'C:\TestFiles'; Zip.SpanningThreshold := 256*1024; Zip.AddFiles('*.*', faAnyFile);...

    2009-11-11 04:02:05 UTC in TurboPower Abbrevia

  • Followup: RE: Zip into Parts

    Set the SpanningThreshold property to the size that you want to limit it to.

    2009-11-10 22:55:23 UTC in TurboPower Abbrevia

  • TAbZipView's FItemList causes crashes

    TAbZipView maintains a TAbArchiveList (FItemList) separate from the one in archive component in order to support the OnIncludeItem event. In rev 181 I changed TAbArchiveList so it takes ownership of the contained TAbArchiveItem and frees the objects when it's cleared. Due to those changes the items are now freed twice, which causes crashes any time you use TAbZipView. Prior to rev 181 it was...

    2009-11-10 04:48:57 UTC in TurboPower Abbrevia

  • Followup: RE: Extract File to Stream from a Cab

    DoDi, Are you referring to the fact that your TArchiver object exposes its internal stream as a property? Abbrevia already has a CreateFromStream constructor, so if you need to read/write access to the stream you can get it. I think it's a bad idea to expose a spanned set as a stream though. Zips and cabs both store the starting image number for each compressed file as part of that item's...

    2009-11-09 22:06:54 UTC in TurboPower Abbrevia

  • Followup: RE: Extract File to Stream from a Cab

    Nicole, That does clear things up. Using ExtractToStream/AddFromStream with a stock Abbrevia definitely won't be the best way to handle things. The first problem is FDICopy, which ExtractToStream uses to actually get the file contents. FDICopy doesn't maintain state from call to call, so it has to re-read the CAB header and seek into the archive for each file you're extracting. If you...

    2009-11-09 03:15:06 UTC in TurboPower Abbrevia

  • Followup: RE: Extract File to Stream from a Cab

    Also, I agree that the lack of a TDeflateStream/TInflateStream like zlib.pas provides is an issue, but looking at the code, I don't think it will be an easy change. For now I'll say that any additional compression algorithms (bzip2/lzma/etc) will be added with a streaming interface, but since zlib.pas provides a viable alternative, adding support for it to the deflate engine isn't high on my...

    2009-11-09 00:31:07 UTC in TurboPower Abbrevia

  • Followup: RE: Extract File to Stream from a Cab

    Touri, I added ExtractToStream support for CABs. Zip, tar, and gzip already supported it, as well as CreateFromStream and AddFromStream. CAB doesn't currently support either of those because the DLL's API doesn't map to it well. CreateFromStream should work for both reading an existing archive as well as creating a new one. There are some fixes for that in Subversion that weren't in the...

    2009-11-09 00:03:33 UTC in TurboPower Abbrevia

About Me

  • 2003-04-09 (7 years ago)
  • 753443
  • capeterson (My Site)
  • Craig Peterson

Send me a message

My Applications