Menu

7z CAB support vs. MS expand

T..
2012-01-23
4 days ago
  • T..

    T.. - 2012-01-23

    I'm having trouble extracting the CAB files I get from Microsoft Windows Server Update Services. If I extract them with 7z, I get basically the same result as extracting them with Microsofts "expand" command, but the most important parts are missing, while MS "expand" expands this correctly and completely. The parts that seem to be incomplete with 7z are in subdirs when MS "expand" is used.
    Example-File:
    B8CEC590CCF1EBC057969C1C760BA290E38FC801.cab

    You might say why don't I just use expand then instead? Well, the reason is, I need to extract the files under Unix. However this problem is reproducible on Windows and Unix.

     
  • Igor Pavlov

    Igor Pavlov - 2012-01-23

    I need the link to such CAB file to test it.

     
  • Igor Pavlov

    Igor Pavlov - 2012-01-23

    And check 7-Zip 9.22 beta also.

     
  • Igor Pavlov

    Igor Pavlov - 2012-01-26

    I don't see any difference.
    maybe my exapnd is old.
    Show what the difference do you see.
    what exact sizes and names of addiitional files.

    Check also that you use latest 7-Zip 9.20.

     
  • Igor Pavlov

    Igor Pavlov - 2012-01-26

    I didn't know about that new feature of CAB.
    I'll check it later. Thanks!

     
  • T..

    T.. - 2012-02-23

    Any news on this one? Do you plan to implement IPD compatible extraction?

     
  • Igor Pavlov

    Igor Pavlov - 2012-02-23

    That IPD feature is not so simple to implement.
    Now I don't want to spend time for that feature.
    Maybe later I'll try.

     
  • T..

    T.. - 2012-06-19

    Still no plans to support the extracting of CAB files?

     
  • T..

    T.. - 2018-01-19

    I found the 18.00 ist out. Did you adress the issue (IPD feature) we discussed a couple of years ago somewhere between 9.22 and 18.00?

     
    • Igor Pavlov

      Igor Pavlov - 2018-01-19

      No. I don't know details about IPD. I suppose it's difficult to implement it now.

       
      • Hacker Vlad

        Hacker Vlad - 4 days ago

        Probably for many years there was no such code on the Internet for unpacking msdelta (PA30). But now there is already such a code on the Internet. I wrote a module for myself, even in visual basic, very light code by the way. This is where I originally came across this article: https://www.manhunter.ru/assembler/1620_upakovka_i_raspakovka_dannih_s_pomoschyu_delta_funkciy.html

        As we can see, this article on the Internet was published only in 2021. I didn't know about this compression algorithm myself before. But it compresses very effectively by the way. Therefore, I easily rewrote this code to Visual Basic, event here: https://www.cyberforum.ru/visual-basic/thread704248-page18.html#post17437738

        The binary data signature starts with PA30. This is a light and simple code, as you can see.

         
  • Linda

    Linda - 2018-02-19

    This is a totally different msdelta feature. It uses cab packaging format but have no relation with cab.
    expand.exe uses BOTH cab and msdelta while 7z only support cab but not msdelta.

    Igor have 2 options:
    (1) detect msdelta while opening CAB files.
    (1.1) and unpack it using win32api.
    (1.2) and implement a msdelta (from/into wine) algorithm from scratch.
    (2) do nothing.

     

    Last edit: Linda 2018-02-19

Log in to post a comment.