Artifact Content

Not logged in

Artifact c407465455d14dd7011548822622f6b8c977b602


     1  #ifndef AFX_ARCACE_H__84B9CB87_29F7_428D_A3E7_F239213B127C__INCLUDED_
     2  #define AFX_ARCACE_H__84B9CB87_29F7_428D_A3E7_F239213B127C__INCLUDED_
     3  
     4  #include "Archiver.h"
     5  #include "SubDlg.h"
     6  
     7  #include "unacedef.h"
     8  
     9  class CArcAce : public CArchiver
    10  {
    11  public: //-- CArchiver  --------------------------------
    12  
    13  	CArcAce() : CArchiver("ace."), hDLL( NULL ) {}
    14  	virtual ~CArcAce()
    15  	{
    16  		if(hDLL) 
    17  			::FreeLibrary(hDLL);
    18  	}
    19  private:
    20  	int  v_load();
    21  	bool v_ver( kiStr& str );
    22  	bool v_check( const kiPath& aname );
    23  	int  v_contents( const kiPath& aname, kiPath& dname );
    24  	int  v_melt( const arcname& aname, const kiPath& ddir, const aflArray* files );
    25  	bool v_list( const arcname& aname, aflArray& files );
    26  	kiStr v_name(const char*) const { return "Unace32"; }
    27  
    28  private: //-- UnAceV2.DLL  ------------------------------
    29  
    30  	HINSTANCE hDLL;
    31  	static int __stdcall callback_error( pACEErrorCallbackProcStruc Error );
    32  	static int __stdcall callback_request( pACERequestCallbackProcStruc Request );
    33  	static int __stdcall callback_state( pACEStateCallbackProcStruc State );
    34  	static int __stdcall callback_info( pACEInfoCallbackProcStruc Info );
    35  	bool listup( tACEFileDataStruc& f );
    36  	aflArray* list;
    37  	CArcProgressDlg* dlg;
    38  	CArcPathCheckDlg* pathCheck;
    39  	char pwdBuf[100];
    40  	const char* m_aname;
    41  	int aCnt;
    42  	kiPath* dName;
    43  	bool m_bCanceled;
    44  
    45  private: //-- UnAce.h ---------------------------------------
    46  
    47  	// API
    48  	typedef int (__stdcall *FI)( pACEInitDllStruc );
    49  	typedef int (__stdcall *FR)( LPSTR, pACEReadArchiveDataStruc );
    50  	typedef int (__stdcall *FL)( LPSTR, pACEListStruc );
    51  	typedef int (__stdcall *FT)( LPSTR, pACETestStruc );
    52  	typedef int (__stdcall *FE)( LPSTR, pACEExtractStruc );
    53  	FI aceInit; FR aceHead; FL aceList; FT aceTest; FE aceExtr;
    54  };
    55  
    56  #endif