Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

[BCB] - CAB arhive

[es] :: C/C++ programiranje :: [BCB] - CAB arhive

[ Pregleda: 2088 | Odgovora: 6 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

itf
Zagreb

Član broj: 59794
Poruke: 993
161.53.237.*



+9 Profil

icon [BCB] - CAB arhive11.03.2009. u 12:48 - pre 183 meseci
Znate kakve dobre i BESPLATNE komponente za rad s CAB arhivama u BCB-u? Ili možda neki funkcionalan source... Prvenstveno trebaju mi mogućnosti kreiranja CAB arhive na osnovu selektiranih datoteka i extractiranja točno određenih datoteka iz CAB-a.

Imam TMS komponente koje imaju CAB komponentu, no trebao bih nekakvo besplatno rješenje. Jedino sam za sada našao ovo:

http://www.gamedev.net/community/forums/topic.asp?topic_id=410596

..ali tu nema primjera kako extractirati točno određene datoteke.

[Ovu poruku je menjao itf dana 11.03.2009. u 14:00 GMT+1]
 
Odgovor na temu

deerbeer
Beograd

Član broj: 174418
Poruke: 1189
*.ptt.yu.



+395 Profil

icon Re: [BCB] - CAB arhive11.03.2009. u 15:34 - pre 183 meseci
Probaj sa CAB SDK-om :
http://support.microsoft.com/kb/310618
nije bas kao biblioteka vec vise kao sirov c kod ,
al imas i primere kako da odradis extract cab-a preko api f-ja iz cabinet.dll-a
a druga solucija je wrapper klasa sa c++ templejtima :
http://www.codeproject.com/KB/winsdk/cabinet.aspx



Viva lollapalooza
 
Odgovor na temu

itf
Zagreb

Član broj: 59794
Poruke: 993
161.53.237.*



+9 Profil

icon Re: [BCB] - CAB arhive12.03.2009. u 09:18 - pre 183 meseci
Sad sam vidio da LMD Tools ima komponente koje su bazirane baš na cabinet.dll-u pa puno pojednostavljuju rad (i besplatne su). Zahvaljujem.
 
Odgovor na temu

Eurora3D Team
Nebojsa - Programer & Vodja tima
Beograd

Član broj: 120376
Poruke: 900
*.kbcnet.co.yu.



+7 Profil

icon Re: [BCB] - CAB arhive12.03.2009. u 16:31 - pre 183 meseci
@deerbeer
BCB linker ne moze da koristi MS lib fajlove ...
 
Odgovor na temu

deerbeer
Beograd

Član broj: 174418
Poruke: 1189
*.adsl-a-2.sezampro.yu.



+395 Profil

icon Re: [BCB] - CAB arhive13.03.2009. u 08:59 - pre 183 meseci
Citat:

BCB linker ne moze da koristi MS lib fajlove ...

OK.. ali moze da poziva f-je iz cabinet.dll-a
Viva lollapalooza
 
Odgovor na temu

X Files
Vladimir Stefanovic
Pozarevac

SuperModerator
Član broj: 15100
Poruke: 4902
*.tekostolac.co.yu.

Jabber: xfiles@elitesecurity.org


+638 Profil

icon Re: [BCB] - CAB arhive13.03.2009. u 09:24 - pre 183 meseci
U kontekstu price o Visual C++ (bolje receno C) DLL-ovima, raznorodnim LIB formatima i njihovoj eventualnoj upotrebi iz Borland C++ Buildera, vise detalja moze naci na sledecem linku:

BCBDEV FAQ
http://www.frasersoft.net/program/bcbdev.zip


Potraziti temu:
Fix linker error: "Invalid OMF record type 0x21 (possibly COFF)"

(Obratiti paznju na alat COFF2OMF.EXE)
 
Odgovor na temu

deerbeer
Beograd

Član broj: 174418
Poruke: 1189
*.adsl-a-2.sezampro.yu.



+395 Profil

icon Re: [BCB] - CAB arhive13.03.2009. u 12:41 - pre 183 meseci
Jedino moze da bude "name mangling" problem u tom slucaju jer bcb i vc++ kompajler razlicito deklarisu export f-je
Nisam mislio na upotrebu takvih lib fajlova vec klasicno pozivanje api f-ja sa LoadLibrary i GetProcAddress ,
sa typdef-om function pointerima koji su deklarisani u cab sdk-u, a samim tim se preskace problem oko *.lib fajlova tj. importa tih f-ja.
Code:
 
#include <windows.h>
#include "fdi.h"

/* pointers to the functions in the DLL */

static HFDI (FAR DIAMONDAPI *pfnFDICreate)(
        PFNALLOC            pfnalloc,
        PFNFREE             pfnfree,
        PFNOPEN             pfnopen,
        PFNREAD             pfnread,
        PFNWRITE            pfnwrite,
        PFNCLOSE            pfnclose,
        PFNSEEK             pfnseek,
        int                 cpuType,
        PERF                perf);
static BOOL (FAR DIAMONDAPI *pfnFDIIsCabinet)(
        HFDI                hfdi,
        int                 hf,
        PFDICABINETINFO     pfdici);
static BOOL (FAR DIAMONDAPI *pfnFDICopy)(
        HFDI                hfdi,
        char                *pszCabinet,
        char                *pszCabPath,
        int                 flags,
        PFNFDINOTIFY        pfnfdin,
        PFNFDIDECRYPT       pfnfdid,
        void                *pvUser);
static BOOL (FAR DIAMONDAPI *pfnFDIDestroy)(
        HFDI                hfdi);


Ostale deklaracije su fdi.h fajlu .
Dosta tezi nacin od onoga sto @itf trazio , al je makar besplatan :)




Viva lollapalooza
 
Odgovor na temu

[es] :: C/C++ programiranje :: [BCB] - CAB arhive

[ Pregleda: 2088 | Odgovora: 6 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.