Распаковка cab-файлов с помощью cabinet.dll

Тема в разделе "WASM.WIN32", создана пользователем Dylan, 16 фев 2005.

  1. Dylan

    Dylan New Member

    Публикаций:
    0
    Регистрация:
    29 ноя 2004
    Сообщения:
    17
    Адрес:
    Russia
    Вот тут пыжился вчера с освоением библиотеки cabinet.dll, чтобы cab-файлы извлекать... А проблема одна возникает: выдаёт критическую ошибку из-за самой библиотеки. Как не извращался - ничего не получается. Может кто-нить поможет?



    [​IMG] 1201055595__cab.zip
     
  2. s0rg

    s0rg New Member

    Публикаций:
    0
    Регистрация:
    7 апр 2004
    Сообщения:
    6
    Адрес:
    Russia
    Стек не сбалансирован FDI* - вызываются в C нотации
     
  3. shoo

    shoo New Member

    Публикаций:
    0
    Регистрация:
    17 июл 2003
    Сообщения:
    1.537
    Адрес:
    Ukraine
    криво, но работает
    Код (Text):
    1. CabExtract proc uses esi
    2.     invoke FDICreate, addr CabMemoryGet,\
    3.       addr CabMemoryFree,\
    4.       addr CabFileOpen,\
    5.       addr CabFileRead,\
    6.       addr CabFileWrite,\
    7.       addr CabFileClose,\
    8.       addr CabFileSeek,\
    9.       1, addr _three_
    10.     add esp,9*4                    
    11.     mov esi, eax
    12.     invoke FDICopy, esi, addr szCabName, addr szCabPath,\
    13.        0, addr CabNotify, 0, 0
    14.     add esp,7*4
    15.     invoke MessageBox, 0, addr OutDirBuf, 0, 0
    16.  
    17.     invoke FDIDestroy, esi
    18.     add esp,4
    19.     xor eax, eax
    20.     ret
    21.  
    22. CabExtract endp