13b7203622 2011-02-23 kinaba: #ifndef __UNACEDEF_H_BY_K_INABA__ 13b7203622 2011-02-23 kinaba: #define __UNACEDEF_H_BY_K_INABA__ 13b7203622 2011-02-23 kinaba: #ifdef __cplusplus 13b7203622 2011-02-23 kinaba: extern "C" { 13b7203622 2011-02-23 kinaba: #endif 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様 13b7203622 2011-02-23 kinaba: //様様様様様様様様=====--- Part 1: different structures ---====様様様様様様様 13b7203622 2011-02-23 kinaba: //様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //--------------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: // 13b7203622 2011-02-23 kinaba: // Here in different structures used at callback functions and 13b7203622 2011-02-23 kinaba: // ACE.DLL functions are declared. 13b7203622 2011-02-23 kinaba: // 13b7203622 2011-02-23 kinaba: //--------------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: // 13b7203622 2011-02-23 kinaba: // Contents: 13b7203622 2011-02-23 kinaba: // Part 1.1: structures used in callback structures 13b7203622 2011-02-23 kinaba: // Part 1.2: structures used in function structures 13b7203622 2011-02-23 kinaba: // 13b7203622 2011-02-23 kinaba: //--------------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様 13b7203622 2011-02-23 kinaba: //========--- Part 1.1: structures used in callback structures ---========= 13b7203622 2011-02-23 kinaba: //様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //陳陳陳陳陳陳陳陳陳陳陳 comment buffer structure 陳陳陳陳陳陳陳陳陳陳陳 13b7203622 2011-02-23 kinaba: // Used in tACEGlobalDataStruc. Application has to specify where the 13b7203622 2011-02-23 kinaba: // comment is or should be stored. 13b7203622 2011-02-23 kinaba: //------------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: typedef struct sACECommentStruc 13b7203622 2011-02-23 kinaba: { 13b7203622 2011-02-23 kinaba: LPSTR Buf; // area where the comments are stored 13b7203622 2011-02-23 kinaba: // by the application or by the Dll 13b7203622 2011-02-23 kinaba: // comments must be zero-terminated 13b7203622 2011-02-23 kinaba: ULONG BufSize; // size of this area 13b7203622 2011-02-23 kinaba: ULONG State; // state of comment - see ACE_COMMENT 13b7203622 2011-02-23 kinaba: // constants below 13b7203622 2011-02-23 kinaba: } tACECommentStruc, 13b7203622 2011-02-23 kinaba: *pACECommentStruc; 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: // Defines for the tACECommentStruc.State field, which tells about 13b7203622 2011-02-23 kinaba: // the result of the last comment extraction. 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_COMMENT_OK 0 // comment extraction went fine 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_COMMENT_SMALLBUF 1 // comment buffer too small to 13b7203622 2011-02-23 kinaba: // store the whole comment in 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_COMMENT_NONE 255 // No comment present 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //陳陳陳陳陳陳陳陳陳陳陳 global data structure 陳陳陳陳陳陳陳陳陳陳陳陳 13b7203622 2011-02-23 kinaba: // This structure contains information for the Dll being interesting for 13b7203622 2011-02-23 kinaba: // nearly all functions. The Dll has to be initialized with this 13b7203622 2011-02-23 kinaba: // structure passed to tACEInitDll(). This structure is also passed 13b7203622 2011-02-23 kinaba: // by the callback functions. 13b7203622 2011-02-23 kinaba: //------------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //--------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: // Forward declarations of callback function parameters 13b7203622 2011-02-23 kinaba: // used in this structure. 13b7203622 2011-02-23 kinaba: //--------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: typedef union sACEInfoCallbackProcStruc 13b7203622 2011-02-23 kinaba: *pACEInfoCallbackProcStruc; 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: typedef union sACEErrorCallbackProcStruc 13b7203622 2011-02-23 kinaba: *pACEErrorCallbackProcStruc; 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: typedef union sACERequestCallbackProcStruc 13b7203622 2011-02-23 kinaba: *pACERequestCallbackProcStruc; 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: typedef union sACEStateCallbackProcStruc 13b7203622 2011-02-23 kinaba: *pACEStateCallbackProcStruc; 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: typedef struct sACEGlobalDataStruc 13b7203622 2011-02-23 kinaba: { 13b7203622 2011-02-23 kinaba: //------------------------ fields for ACE and UnACE ------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: void *Obj; // ---- reserved for application! ---- 13b7203622 2011-02-23 kinaba: // thought to be used as a pointer to 13b7203622 2011-02-23 kinaba: // an object; when a callback-function is 13b7203622 2011-02-23 kinaba: // called, the object pointer can be used to 13b7203622 2011-02-23 kinaba: // handle the callback in a specific way; 13b7203622 2011-02-23 kinaba: // the pointer has to be initialized by 13b7203622 2011-02-23 kinaba: // ACEInitDll() 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: ULONG MaxArchiveTestBytes; 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // how many bytes of a file should be 13b7203622 2011-02-23 kinaba: // looked upon at archive header search? 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: ULONG MaxFileBufSize; 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // maximum buffer size for buffered 13b7203622 2011-02-23 kinaba: // I/O operations 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: tACECommentStruc // used to exchange comment data 13b7203622 2011-02-23 kinaba: Comment; // between application and Dll 13b7203622 2011-02-23 kinaba: // using callback functions 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: LPSTR DecryptPassword; 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // the DecryptPassword specified at 13b7203622 2011-02-23 kinaba: // ACEInitDll() is overwritten by the 13b7203622 2011-02-23 kinaba: // DecryptPassword field of tACEAddStruc and 13b7203622 2011-02-23 kinaba: // other function-specific structures; 13b7203622 2011-02-23 kinaba: // but this field can be used to change the 13b7203622 2011-02-23 kinaba: // password at callback function calls 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: BOOL UseVBStructures; // passes structures to callback functions 13b7203622 2011-02-23 kinaba: // much better suited for Visual Basic 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: CHAR Reserved1[60]; // has to be filled with zeros 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //--------------------------- fields for ACE only --------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: LPSTR EncryptPassword; 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // things stated at the description of the 13b7203622 2011-02-23 kinaba: // DecryptPassword field apply here as well 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: LPSTR TempDir; // directory to save temporary archive 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //-------- registration (ACE DLLs only, but not used at ACL) ---------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: LPSTR KeyPath; // necessary for reading and writing key file 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: LPSTR UserAV; // Dll returns the AV string (if registered) 13b7203622 2011-02-23 kinaba: // in this field 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: LPSTR IsGeneralKey; // DLL returns the key, if it is a general key 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: HWND OwnerWindow; // specifies the applications window to be 13b7203622 2011-02-23 kinaba: // parent of the registration reminder dialog 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //--------------------------- fields for ACE only --------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: ULONG CompressionLevel; 13b7203622 2011-02-23 kinaba: // contains the currently used compression 13b7203622 2011-02-23 kinaba: // level - may be changed during compression 13b7203622 2011-02-23 kinaba: // operation 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: CHAR Reserved2[56]; // has to be filled with zeros 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //---------------------- callback functions (ACE and UnACE) ---------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: INT (__stdcall *InfoCallbackProc) 13b7203622 2011-02-23 kinaba: (pACEInfoCallbackProcStruc Info); 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // Informs application about details like the 13b7203622 2011-02-23 kinaba: // creation of a temporary archive. 13b7203622 2011-02-23 kinaba: // See ACE_CALLBACK_INFO definitions for 13b7203622 2011-02-23 kinaba: // more information. 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: INT (__stdcall *ErrorCallbackProc) 13b7203622 2011-02-23 kinaba: (pACEErrorCallbackProcStruc Error); 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // Called to let the application know about 13b7203622 2011-02-23 kinaba: // errors. The Code field of Error will 13b7203622 2011-02-23 kinaba: // contain an ACE_CALLBACK_ERROR value. 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: INT (__stdcall *RequestCallbackProc) 13b7203622 2011-02-23 kinaba: (pACERequestCallbackProcStruc Request); 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // Called to let the application know about 13b7203622 2011-02-23 kinaba: // requests for data. Code will contain an 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_REQUEST value. 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: INT (__stdcall *StateCallbackProc) 13b7203622 2011-02-23 kinaba: (pACEStateCallbackProcStruc State); 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // Called to let the application know about 13b7203622 2011-02-23 kinaba: // the progress of operations. 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //-------------------------- different new fields --------------------- 13b7203622 2011-02-23 kinaba: CHAR Reserved3[64]; // has to be filled with zeros 13b7203622 2011-02-23 kinaba: } tACEGlobalDataStruc, 13b7203622 2011-02-23 kinaba: *pACEGlobalDataStruc; 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //陳陳陳陳陳陳陳陳陳陳陳 archive data structure 陳陳陳陳陳陳陳陳陳陳陳陳 13b7203622 2011-02-23 kinaba: // Informs the callback functions about the current archive, its volume 13b7203622 2011-02-23 kinaba: // number, the archive-flags (see ACE_FLAG constants), the creation host 13b7203622 2011-02-23 kinaba: // system (see ACE_HOST constants) and the AV if present in archive. 13b7203622 2011-02-23 kinaba: // Also used at ACEReadArchiveData(). 13b7203622 2011-02-23 kinaba: //------------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: typedef struct sACEArchiveDataStruc 13b7203622 2011-02-23 kinaba: { 13b7203622 2011-02-23 kinaba: LPSTR ArchiveName; 13b7203622 2011-02-23 kinaba: ULONG VolumeNumber, 13b7203622 2011-02-23 kinaba: Flags, // see ACE_ARCFLAG defines below 13b7203622 2011-02-23 kinaba: HostCreated, // see ACE_HOST defines below 13b7203622 2011-02-23 kinaba: TimeCreated, // in MS-DOS format 13b7203622 2011-02-23 kinaba: VersionCreated, 13b7203622 2011-02-23 kinaba: VersionExtract; // version needed to extract files 13b7203622 2011-02-23 kinaba: LPSTR AV; // not used in ACL 13b7203622 2011-02-23 kinaba: CHAR Reserved[64]; // filled with zeros 13b7203622 2011-02-23 kinaba: } tACEArchiveDataStruc, 13b7203622 2011-02-23 kinaba: *pACEArchiveDataStruc; 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: // Flag constants for tACEArchiveDataStruc.Flags field. 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_ARCFLAG_MAINCOMMENT 2 13b7203622 2011-02-23 kinaba: #define ACE_ARCFLAG_SFX 512 13b7203622 2011-02-23 kinaba: #define ACE_ARCFLAG_LIMITSFXJR 1024 // is an SFX archive 13b7203622 2011-02-23 kinaba: // that supports 256k 13b7203622 2011-02-23 kinaba: // dictionary only 13b7203622 2011-02-23 kinaba: #define ACE_ARCFLAG_MULTIVOLUME 2048 13b7203622 2011-02-23 kinaba: #define ACE_ARCFLAG_AV 4096 // not used in ACL 13b7203622 2011-02-23 kinaba: #define ACE_ARCFLAG_RECOVERYREC 8192 13b7203622 2011-02-23 kinaba: #define ACE_ARCFLAG_LOCK 16384 13b7203622 2011-02-23 kinaba: #define ACE_ARCFLAG_SOLID 32768 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: // Host system used to create an archive. Used at 13b7203622 2011-02-23 kinaba: // tACEArchiveDataStruc.HostCreated field. 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_HOST_MSDOS 0 // archive created by 13b7203622 2011-02-23 kinaba: // MSDOS ACE archiver 13b7203622 2011-02-23 kinaba: #define ACE_HOST_OS2 1 // created by OS2 ACE 13b7203622 2011-02-23 kinaba: #define ACE_HOST_WIN32 2 // created by Win32 ACE 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //陳陳陳陳陳陳陳陳陳陳陳陳 file data structure 陳陳陳陳陳陳陳陳陳陳陳陳陳 13b7203622 2011-02-23 kinaba: // Contains information about an archived file. 13b7203622 2011-02-23 kinaba: //------------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: typedef struct sACEFileDataStruc 13b7203622 2011-02-23 kinaba: { 13b7203622 2011-02-23 kinaba: LPSTR SourceFileName; // relative file name 13b7203622 2011-02-23 kinaba: LPSTR DestinationFileName; // absolute file name; 13b7203622 2011-02-23 kinaba: // valid for add and extract only! 13b7203622 2011-02-23 kinaba: ULONG Flags, // see ACE_FILEFLAG defines below 13b7203622 2011-02-23 kinaba: CRC32, 13b7203622 2011-02-23 kinaba: Method, // 0=stored, 1=LZ77, 2=V20Compression 13b7203622 2011-02-23 kinaba: Dictionary; // DictionarySize = 2^Dictionary 13b7203622 2011-02-23 kinaba: DWORDLONG 13b7203622 2011-02-23 kinaba: CompressedSize, 13b7203622 2011-02-23 kinaba: Size; 13b7203622 2011-02-23 kinaba: ULONG Time, 13b7203622 2011-02-23 kinaba: Attributes; 13b7203622 2011-02-23 kinaba: CHAR Reserved[64]; // filled with zeros 13b7203622 2011-02-23 kinaba: } tACEFileDataStruc, 13b7203622 2011-02-23 kinaba: *pACEFileDataStruc; 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: // Flag constants for the tACEFileData.Flags field. 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_FILEFLAG_FILECOMMENT 2 // file has comment 13b7203622 2011-02-23 kinaba: #define ACE_FILEFLAG_SPLITBEFORE 4096 // continued from 13b7203622 2011-02-23 kinaba: // previous volume 13b7203622 2011-02-23 kinaba: #define ACE_FILEFLAG_SPLITAFTER 8192 // continued on 13b7203622 2011-02-23 kinaba: // next volume 13b7203622 2011-02-23 kinaba: #define ACE_FILEFLAG_PASSWORD 16384 // is encrypted 13b7203622 2011-02-23 kinaba: #define ACE_FILEFLAG_SOLID 32768 // uses data of previous 13b7203622 2011-02-23 kinaba: // files (solid mode) 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //陳陳陳陳陳陳陳陳陳陳陳陳 copy info structure 陳陳陳陳陳陳陳陳陳陳陳陳陳 13b7203622 2011-02-23 kinaba: // Is passed to ACEInfoCallbackProc with ACE_CALLBACK_INFO_COPY as code. 13b7203622 2011-02-23 kinaba: // Informs application about the progress of copying either an archive to 13b7203622 2011-02-23 kinaba: // a temporary archive, or a temporary archive back to a normal archive. 13b7203622 2011-02-23 kinaba: //------------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: typedef struct sACECopyInfoStruc 13b7203622 2011-02-23 kinaba: { 13b7203622 2011-02-23 kinaba: LPSTR SourceFileName, // source file 13b7203622 2011-02-23 kinaba: DestinationFileName; // the file copying the source to 13b7203622 2011-02-23 kinaba: DWORDLONG 13b7203622 2011-02-23 kinaba: CopiedBytes, // bytes already copied 13b7203622 2011-02-23 kinaba: FileSize; // source file size 13b7203622 2011-02-23 kinaba: CHAR Reserved[64]; // filled with zeros 13b7203622 2011-02-23 kinaba: } tACECopyInfoStruc, 13b7203622 2011-02-23 kinaba: *pACECopyInfoStruc; 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //陳陳陳陳陳陳陳陳陳陳 operation progress structure 陳陳陳陳陳陳陳陳陳陳 13b7203622 2011-02-23 kinaba: // Used to state the progress of the current operation. 13b7203622 2011-02-23 kinaba: //------------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: typedef struct sACEProgressDataStruc 13b7203622 2011-02-23 kinaba: { 13b7203622 2011-02-23 kinaba: LPSTR Addr; // address of uncompressed data block 13b7203622 2011-02-23 kinaba: ULONG Size; // size of uncompressed data block 13b7203622 2011-02-23 kinaba: DWORDLONG TotalProcessedSize; // counted by Dll: 13b7203622 2011-02-23 kinaba: // total uncompressed bytes processed 13b7203622 2011-02-23 kinaba: DWORDLONG TotalCompressedSize;// total compressed bytes processed 13b7203622 2011-02-23 kinaba: DWORDLONG TotalSize; // total uncompressed bytes to process 13b7203622 2011-02-23 kinaba: // (sum of all original file sizes) 13b7203622 2011-02-23 kinaba: DWORDLONG FileProcessedSize; // uncompr. bytes of file processed 13b7203622 2011-02-23 kinaba: DWORDLONG FileCompressedSize; // compr. bytes of file processed 13b7203622 2011-02-23 kinaba: DWORDLONG FileSize; // uncompressed file size 13b7203622 2011-02-23 kinaba: } tACEProgressDataStruc, 13b7203622 2011-02-23 kinaba: *pACEProgressDataStruc; 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様 13b7203622 2011-02-23 kinaba: //========--- Part 1.2: structures used in function structures ---========= 13b7203622 2011-02-23 kinaba: //様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //陳陳陳陳陳陳陳陳陳陳陳陳 file list structure 陳陳陳陳陳陳陳陳陳陳陳陳 13b7203622 2011-02-23 kinaba: // This structure is used in the function specific structures. 13b7203622 2011-02-23 kinaba: // The application has to use this structure to indicate which files 13b7203622 2011-02-23 kinaba: // have to be processed by the DLL. 13b7203622 2011-02-23 kinaba: //------------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: typedef struct sACEFilesStruc 13b7203622 2011-02-23 kinaba: { 13b7203622 2011-02-23 kinaba: LPSTR SourceDir; // maybe a real or an archive directory 13b7203622 2011-02-23 kinaba: LPSTR FileList; // pointer to list of files to process; 13b7203622 2011-02-23 kinaba: // zero-terminated; files have to be 13b7203622 2011-02-23 kinaba: // separated by carriage-return (0xd); 13b7203622 2011-02-23 kinaba: // FileList may/will be modified by the 13b7203622 2011-02-23 kinaba: // Dll; if nothing is specified, "*" 13b7203622 2011-02-23 kinaba: // will be used 13b7203622 2011-02-23 kinaba: // (attention at ACEDelete!!) 13b7203622 2011-02-23 kinaba: LPSTR ExcludeList; // list of files to exclude from process 13b7203622 2011-02-23 kinaba: BOOL FullMatch; // specifications must fully match 13b7203622 2011-02-23 kinaba: // (no files with the same name in 13b7203622 2011-02-23 kinaba: // subdirs are processed) 13b7203622 2011-02-23 kinaba: BOOL RecurseSubDirs; // recurse subdirectories 13b7203622 2011-02-23 kinaba: // (valid for add operations only) 13b7203622 2011-02-23 kinaba: CHAR Reserved[60] ; // has to be filled with zeros 13b7203622 2011-02-23 kinaba: // for future: possibly in-/excluding 13b7203622 2011-02-23 kinaba: // file attributes and date/time range 13b7203622 2011-02-23 kinaba: } tACEFilesStruc, 13b7203622 2011-02-23 kinaba: *pACEFilesStruc; 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //陳陳陳陳陳陳陳陳陳陳 V2.0 compression structure 陳陳陳陳陳陳陳陳陳陳陳 13b7203622 2011-02-23 kinaba: // Specifies whether to use v2.0 compression or not. If you use v2.0 13b7203622 2011-02-23 kinaba: // compression you can also specify which v2.0 compression techniques 13b7203622 2011-02-23 kinaba: // you want to use. (ACE only) 13b7203622 2011-02-23 kinaba: //------------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: typedef struct sACEV20CompressionStruc 13b7203622 2011-02-23 kinaba: { 13b7203622 2011-02-23 kinaba: BOOL DoUse, // if DoUse=1 and all other fields are 13b7203622 2011-02-23 kinaba: DoUseDelta, // zero, then all v2.0 compression 13b7203622 2011-02-23 kinaba: DoUseExe, // techniques will be used 13b7203622 2011-02-23 kinaba: DoUsePic, 13b7203622 2011-02-23 kinaba: DoUseSound; 13b7203622 2011-02-23 kinaba: CHAR Reserved[64]; // has to be filled with zeros 13b7203622 2011-02-23 kinaba: } tACEV20CompressionStruc, 13b7203622 2011-02-23 kinaba: *pACEV20CompressionStruc; 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //陳陳陳陳陳陳陳陳陳 compression parameter structure 陳陳陳陳陳陳陳陳陳 13b7203622 2011-02-23 kinaba: // Used in tACEAddStruc and tACEDeleteStruc. (ACE only) 13b7203622 2011-02-23 kinaba: //------------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: typedef struct sACECompressParamsStruc 13b7203622 2011-02-23 kinaba: { 13b7203622 2011-02-23 kinaba: ULONG Level, // see ACE_LEVEL constants below 13b7203622 2011-02-23 kinaba: Dictionary; // 15(32k)..22(4Mb) 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: tACEV20CompressionStruc // indicates if (or which) v2.0 13b7203622 2011-02-23 kinaba: V20Compression; // compression techniques shall be used 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: BOOL TestAfter; // make a test for CRC check errors 13b7203622 2011-02-23 kinaba: // after compression 13b7203622 2011-02-23 kinaba: CHAR Reserved[64]; // has to be filled with zeros 13b7203622 2011-02-23 kinaba: } tACECompressParamsStruc, 13b7203622 2011-02-23 kinaba: *pACECompressParamsStruc; 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: // Tells the Dll which compression level to use. (ACE only) 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_LEVEL_STORE 0 // save file only; do not compress 13b7203622 2011-02-23 kinaba: #define ACE_LEVEL_FASTEST 1 // compress very fast 13b7203622 2011-02-23 kinaba: #define ACE_LEVEL_FAST 2 // compress fast 13b7203622 2011-02-23 kinaba: #define ACE_LEVEL_NORMAL 3 // good compromise between speed and 13b7203622 2011-02-23 kinaba: // compression rate 13b7203622 2011-02-23 kinaba: #define ACE_LEVEL_GOOD 4 // achieves good compression 13b7203622 2011-02-23 kinaba: #define ACE_LEVEL_BEST 5 // best compression; bit slow 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様 13b7203622 2011-02-23 kinaba: //様様様様様=====--- Part 2: ACE.DLL callback declarations ---====様様様様様 13b7203622 2011-02-23 kinaba: //様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //--------------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: // 13b7203622 2011-02-23 kinaba: // ACE.DLL makes use of four callback functions to exchange data 13b7203622 2011-02-23 kinaba: // with the application: 13b7203622 2011-02-23 kinaba: // 13b7203622 2011-02-23 kinaba: // 1) InfoCallbackProc (pACEInfoCallbackProcStruc Info) 13b7203622 2011-02-23 kinaba: // 2) ErrorCallbackProc (pACEErrorCallbackProcStruc Error) 13b7203622 2011-02-23 kinaba: // 3) RequestCallbackProc(pACERequestCallbackProcStruc Request) 13b7203622 2011-02-23 kinaba: // 4) StateCallbackProc (pACEStateCallbackProcStruc State) 13b7203622 2011-02-23 kinaba: // 13b7203622 2011-02-23 kinaba: // Meaning of different callback types: 13b7203622 2011-02-23 kinaba: // Info - lets the application know about actions that take some 13b7203622 2011-02-23 kinaba: // time but are not essential 13b7203622 2011-02-23 kinaba: // (Code is one of ACE_CALLBACK_INFO constants) 13b7203622 2011-02-23 kinaba: // Error - an error occured; if the reason for this error can 13b7203622 2011-02-23 kinaba: // be solved by the application then the Dll can continue 13b7203622 2011-02-23 kinaba: // the current operation, otherwise the operation has to 13b7203622 2011-02-23 kinaba: // be canceled 13b7203622 2011-02-23 kinaba: // (Code is one of ACE_CALLBACK_ERROR constants) 13b7203622 2011-02-23 kinaba: // Request - the Dll needs some user input 13b7203622 2011-02-23 kinaba: // for ex.: "Overwrite file? (yes/no/cancel)" 13b7203622 2011-02-23 kinaba: // (Code is one of ACE_CALLBACK_REQUEST constants) 13b7203622 2011-02-23 kinaba: // State - Dll informs application about the progress of an operation 13b7203622 2011-02-23 kinaba: // (Code is one of ACE_CALLBACK_STATE constants) 13b7203622 2011-02-23 kinaba: // 13b7203622 2011-02-23 kinaba: // The pointers to the callback functions has to be set by the application 13b7203622 2011-02-23 kinaba: // when calling ACEInitDll(). If the application does not install 13b7203622 2011-02-23 kinaba: // a callback function, is has set the corresponding pointer to NULL. 13b7203622 2011-02-23 kinaba: // If the ACE.DLL has to call the Error or Request callback function 13b7203622 2011-02-23 kinaba: // and they are not installed, the ACE.DLL will cancel the operation. 13b7203622 2011-02-23 kinaba: // 13b7203622 2011-02-23 kinaba: // The application has the possibility to cancel the current operation 13b7203622 2011-02-23 kinaba: // at each callback function call. So if the user clicks on a Cancel-button, 13b7203622 2011-02-23 kinaba: // the application should return ACE_CALLBACK_RETURN_CANCEL at the next 13b7203622 2011-02-23 kinaba: // callback function call. 13b7203622 2011-02-23 kinaba: // 13b7203622 2011-02-23 kinaba: // All callback function parameters are declared as unions. 13b7203622 2011-02-23 kinaba: // The StructureType field contains he type of the structure which is used. 13b7203622 2011-02-23 kinaba: // When the application knows which type of structure it has to use, 13b7203622 2011-02-23 kinaba: // it will have to interpret the Code field to get to know the reason 13b7203622 2011-02-23 kinaba: // for the callback function call. 13b7203622 2011-02-23 kinaba: // 13b7203622 2011-02-23 kinaba: //--------------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: // 13b7203622 2011-02-23 kinaba: // Contents: 13b7203622 2011-02-23 kinaba: // Part 2.1: operation types 13b7203622 2011-02-23 kinaba: // Part 2.2: callback function return codes 13b7203622 2011-02-23 kinaba: // Part 2.3: callback structure types 13b7203622 2011-02-23 kinaba: // Part 2.4: callback structures 13b7203622 2011-02-23 kinaba: // Part 2.5: info callback function 13b7203622 2011-02-23 kinaba: // Part 2.6: error callback function 13b7203622 2011-02-23 kinaba: // Part 2.7: request callback function 13b7203622 2011-02-23 kinaba: // Part 2.8: state callback function 13b7203622 2011-02-23 kinaba: // 13b7203622 2011-02-23 kinaba: //--------------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様 13b7203622 2011-02-23 kinaba: //=====================--- Part 2.1: operation codes ---=================== 13b7203622 2011-02-23 kinaba: //様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様 13b7203622 2011-02-23 kinaba: // Passed to callback functions indicating the current operation. 13b7203622 2011-02-23 kinaba: //------------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_OPERATION_LIST 0 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_OPERATION_TEST 1 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_OPERATION_ANALYZE 2 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_OPERATION_EXTRACT 3 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_OPERATION_ADD 4 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_OPERATION_REPACK 5 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_OPERATION_DELETE 6 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_OPERATION_REPAIR 7 // repair without 13b7203622 2011-02-23 kinaba: // recovery record 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_OPERATION_SETCMT 8 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_OPERATION_ENCRYPT 9 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_OPERATION_KEEP 10 // file is to be 13b7203622 2011-02-23 kinaba: // taken along 13b7203622 2011-02-23 kinaba: // without recompress 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_OPERATION_RECOVER 11 // begin of 13b7203622 2011-02-23 kinaba: // recovering archive 13b7203622 2011-02-23 kinaba: // by recovery record 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_OPERATION_HEADSEARCH 12 // begin of searching 13b7203622 2011-02-23 kinaba: // for file headers 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_OPERATION_RECRECSEARCH 13 // begin of searching 13b7203622 2011-02-23 kinaba: // for recovery record 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_OPERATION_ADDSFX 14 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_OPERATION_LOCK 15 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_OPERATION_ADDAV 16 // not used in ACL 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_OPERATION_ADDRECOVREC 17 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_OPERATION_REGISTER 18 // not used in ACL 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様 13b7203622 2011-02-23 kinaba: //=============--- Part 2.2: callback function return codes ---============ 13b7203622 2011-02-23 kinaba: //様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様 13b7203622 2011-02-23 kinaba: // One of these result codes has to be returned by the application-based 13b7203622 2011-02-23 kinaba: // callback functions. 13b7203622 2011-02-23 kinaba: //--------------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_RETURN_OK 0 // also "yes" at 13b7203622 2011-02-23 kinaba: // requests 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_RETURN_NO 1 // no, do not/ 13b7203622 2011-02-23 kinaba: // do not retry 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_RETURN_CANCEL 2 // abort operation 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様 13b7203622 2011-02-23 kinaba: //================--- Part 2.3: callback structure types ---=============== 13b7203622 2011-02-23 kinaba: //様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様 13b7203622 2011-02-23 kinaba: // States of which type the passed structure is when a callback function 13b7203622 2011-02-23 kinaba: // is called. The type is written to the StructureType field. 13b7203622 2011-02-23 kinaba: //--------------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_TYPE_GLOBAL 0x0 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // type of structure is 13b7203622 2011-02-23 kinaba: // tACECallbackGlobalStruc 13b7203622 2011-02-23 kinaba: //------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: // callback function | codes using this structure 13b7203622 2011-02-23 kinaba: // --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- 13b7203622 2011-02-23 kinaba: // InfoCallbackProc | ACE_CALLBACK_INFO_GENERALKEY // not used in ACL 13b7203622 2011-02-23 kinaba: // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 13b7203622 2011-02-23 kinaba: // ErrorCallbackProc | ACE_CALLBACK_ERROR_MEMORY // fr ManyFilesError und ExtractMem andere Codes verwenden!? 13b7203622 2011-02-23 kinaba: // | ACE_CALLBACK_ERROR_REGISTER // not used in ACL 13b7203622 2011-02-23 kinaba: // | ACE_CALLBACK_ERROR_READKEY // not used in ACL 13b7203622 2011-02-23 kinaba: // | ACE_CALLBACK_ERROR_WRITEKEY // not used in ACL 13b7203622 2011-02-23 kinaba: // | ACE_CALLBACK_ERROR_NOWINACEKEY // not used in ACL 13b7203622 2011-02-23 kinaba: // | ACE_CALLBACK_ERROR_NOACTIVEACEKEY // not used in ACL 13b7203622 2011-02-23 kinaba: // | ACE_CALLBACK_ERROR_UNCSPACE // wird noch nicht verwendet! 13b7203622 2011-02-23 kinaba: // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 13b7203622 2011-02-23 kinaba: // RequestCallbackProc | ACE_CALLBACK_REQUEST_REGISTER // not used in ACL 13b7203622 2011-02-23 kinaba: // 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_TYPE_ARCHIVE 0x1 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // type of structure is 13b7203622 2011-02-23 kinaba: // tACECallbackArchiveStruc 13b7203622 2011-02-23 kinaba: //------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: // callback function | codes using this structure 13b7203622 2011-02-23 kinaba: // --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- 13b7203622 2011-02-23 kinaba: // InfoCallbackProc | ACE_CALLBACK_INFO_TMPARCCREATE 13b7203622 2011-02-23 kinaba: // | ACE_CALLBACK_INFO_TMPARCCREATEEND 13b7203622 2011-02-23 kinaba: // | ACE_CALLBACK_INFO_ADDRECREC 13b7203622 2011-02-23 kinaba: // | ACE_CALLBACK_INFO_ADDRECRECEND 13b7203622 2011-02-23 kinaba: // | ACE_CALLBACK_INFO_RECREC 13b7203622 2011-02-23 kinaba: // | ACE_CALLBACK_INFO_NORECREC 13b7203622 2011-02-23 kinaba: // | ACE_CALLBACK_INFO_RECOVERED 13b7203622 2011-02-23 kinaba: // | ACE_CALLBACK_INFO_NODAMAGE 13b7203622 2011-02-23 kinaba: // | ACE_CALLBACK_INFO_FNDMAINHEAD 13b7203622 2011-02-23 kinaba: // | ACE_CALLBACK_INFO_FILELISTCREATE 13b7203622 2011-02-23 kinaba: // | ACE_CALLBACK_INFO_FILELISTCREATEEND 13b7203622 2011-02-23 kinaba: // | ACE_CALLBACK_INFO_FILESORT 13b7203622 2011-02-23 kinaba: // | ACE_CALLBACK_INFO_FILESORTEND 13b7203622 2011-02-23 kinaba: // | ACE_CALLBACK_INFO_COPYEND 13b7203622 2011-02-23 kinaba: // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 13b7203622 2011-02-23 kinaba: // ErrorCallbackProc | ACE_CALLBACK_ERROR_MODIFYVOLUME 13b7203622 2011-02-23 kinaba: // | ACE_CALLBACK_ERROR_MODIFYLOCKEDARCHIVE 13b7203622 2011-02-23 kinaba: // | ACE_CALLBACK_ERROR_AV // not used in ACL 13b7203622 2011-02-23 kinaba: // | ACE_CALLBACK_ERROR_TOODAMAGED 13b7203622 2011-02-23 kinaba: // | ACE_CALLBACK_ERROR_ARCHIVEEXISTS 13b7203622 2011-02-23 kinaba: // | ACE_CALLBACK_ERROR_OPENREPAIRARCHIVE 13b7203622 2011-02-23 kinaba: // | ACE_CALLBACK_ERROR_OPENARCHIVEREAD 13b7203622 2011-02-23 kinaba: // | ACE_CALLBACK_ERROR_OPENARCHIVEWRITE 13b7203622 2011-02-23 kinaba: // | ACE_CALLBACK_ERROR_READARCHIVE 13b7203622 2011-02-23 kinaba: // | ACE_CALLBACK_ERROR_WRITEARCHIVE 13b7203622 2011-02-23 kinaba: // | ACE_CALLBACK_ERROR_ALREADYSFX 13b7203622 2011-02-23 kinaba: // | ACE_CALLBACK_ERROR_ADDSFXTOVOLUME 13b7203622 2011-02-23 kinaba: // | ACE_CALLBACK_ERROR_ARCHIVEBROKEN 13b7203622 2011-02-23 kinaba: // | ACE_CALLBACK_ERROR_ARCHIVESAVE 13b7203622 2011-02-23 kinaba: // | ACE_CALLBACK_ERROR_NOFILES 13b7203622 2011-02-23 kinaba: // | ACE_CALLBACK_ERROR_ISNOTANARCHIVE 13b7203622 2011-02-23 kinaba: // | ACE_CALLBACK_ERROR_TEMPDIRCREATE 13b7203622 2011-02-23 kinaba: // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 13b7203622 2011-02-23 kinaba: // RequestCallbackProc | ACE_CALLBACK_REQUEST_MARKASSOLID 13b7203622 2011-02-23 kinaba: // | ACE_CALLBACK_REQUEST_CHANGEVOLUME 13b7203622 2011-02-23 kinaba: // | ACE_CALLBACK_REQUEST_ARCHIVEEXISTS 13b7203622 2011-02-23 kinaba: // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 13b7203622 2011-02-23 kinaba: // StateCallbackProc | ACE_CALLBACK_STATE_STARTARCHIVE 13b7203622 2011-02-23 kinaba: // 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_TYPE_ARCHIVEDFILE 0x2 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // type of structure is 13b7203622 2011-02-23 kinaba: // tACECallbackArchivedFileStruc 13b7203622 2011-02-23 kinaba: //------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: // callback function | codes using this structure 13b7203622 2011-02-23 kinaba: // --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- 13b7203622 2011-02-23 kinaba: // InfoCallbackProc | ACE_CALLBACK_INFO_TMPARCCREATE 13b7203622 2011-02-23 kinaba: // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 13b7203622 2011-02-23 kinaba: // ErrorCallbackProc | ACE_CALLBACK_ERROR_CREATIONNAMEINUSE 13b7203622 2011-02-23 kinaba: // | ACE_CALLBACK_ERROR_HIGHERVERSION 13b7203622 2011-02-23 kinaba: // | ACE_CALLBACK_ERROR_ENCRYPTIONCRC 13b7203622 2011-02-23 kinaba: // | ACE_CALLBACK_ERROR_WRITE 13b7203622 2011-02-23 kinaba: // | ACE_CALLBACK_ERROR_READ 13b7203622 2011-02-23 kinaba: // | ACE_CALLBACK_ERROR_OPENREAD 13b7203622 2011-02-23 kinaba: // | ACE_CALLBACK_ERROR_OPENWRITE //wird noch gar nich benutzt?? sollte aber - bei extract! 13b7203622 2011-02-23 kinaba: // | ACE_CALLBACK_ERROR_FILENAMETOOLONG 13b7203622 2011-02-23 kinaba: // | ACE_CALLBACK_ERROR_REPACKCRC 13b7203622 2011-02-23 kinaba: // | ACE_CALLBACK_ERROR_EXCLUDEPATH 13b7203622 2011-02-23 kinaba: // | ACE_CALLBACK_ERROR_METHOD 13b7203622 2011-02-23 kinaba: // | ACE_CALLBACK_ERROR_EXTRACTSPACE 13b7203622 2011-02-23 kinaba: // | ACE_CALLBACK_ERROR_CREATION 13b7203622 2011-02-23 kinaba: // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 13b7203622 2011-02-23 kinaba: // RequestCallbackProc | ACE_CALLBACK_REQUEST_OVERWRITE 13b7203622 2011-02-23 kinaba: // | ACE_CALLBACK_REQUEST_DELETEARCHIVEDSYSFILE 13b7203622 2011-02-23 kinaba: // | ACE_CALLBACK_REQUEST_ADDBROKENFILE 13b7203622 2011-02-23 kinaba: // | ACE_CALLBACK_REQUEST_PASSWORD 13b7203622 2011-02-23 kinaba: // | ACE_CALLBACK_REQUEST_OVERWRITESYSFILE 13b7203622 2011-02-23 kinaba: // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 13b7203622 2011-02-23 kinaba: // StateCallbackProc | ACE_CALLBACK_STATE_STARTFILE 13b7203622 2011-02-23 kinaba: // | ACE_CALLBACK_STATE_ENDNOCRCCHECK 13b7203622 2011-02-23 kinaba: // 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_TYPE_REALFILE 0x3 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // type of structure is 13b7203622 2011-02-23 kinaba: // tACECallbackRealFileStruc 13b7203622 2011-02-23 kinaba: //------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: // callback function | codes using this structure 13b7203622 2011-02-23 kinaba: // --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- 13b7203622 2011-02-23 kinaba: // InfoCallbackProc | ACE_CALLBACK_INFO_FILELISTADD 13b7203622 2011-02-23 kinaba: // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 13b7203622 2011-02-23 kinaba: // ErrorCallbackProc | ACE_CALLBACK_ERROR_MOVEDELETE 13b7203622 2011-02-23 kinaba: // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 13b7203622 2011-02-23 kinaba: // RequestCallbackProc | ACE_CALLBACK_REQUEST_MOVEDELETEREALSYSFILE 13b7203622 2011-02-23 kinaba: // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 13b7203622 2011-02-23 kinaba: // StateCallbackProc | ACE_CALLBACK_STATE_STARTFILE 13b7203622 2011-02-23 kinaba: // 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_TYPE_SPACE 0x4 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // type of structure is 13b7203622 2011-02-23 kinaba: // tACECallbackSpaceStruc 13b7203622 2011-02-23 kinaba: //------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: // callback function | codes using this structure 13b7203622 2011-02-23 kinaba: // --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- 13b7203622 2011-02-23 kinaba: // ErrorCallbackProc | ACE_CALLBACK_ERROR_TEMPDIRSPACE 13b7203622 2011-02-23 kinaba: // | ACE_CALLBACK_ERROR_ARCHIVESPACE 13b7203622 2011-02-23 kinaba: // 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_TYPE_SFXFILE 0x5 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // type of structure is 13b7203622 2011-02-23 kinaba: // tACECallbackSFXFileStruc 13b7203622 2011-02-23 kinaba: //------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: // callback function | codes using this structure 13b7203622 2011-02-23 kinaba: // --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- 13b7203622 2011-02-23 kinaba: // ErrorCallbackProc | ACE_CALLBACK_ERROR_READINGSFXFILE 13b7203622 2011-02-23 kinaba: // 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_TYPE_COPY 0x6 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // type of structure is 13b7203622 2011-02-23 kinaba: // tACECallbackCopyStruc 13b7203622 2011-02-23 kinaba: //------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: // callback function | codes using this structure 13b7203622 2011-02-23 kinaba: // --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- 13b7203622 2011-02-23 kinaba: // InfoCallbackProc | ACE_CALLBACK_INFO_COPY 13b7203622 2011-02-23 kinaba: // 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_TYPE_PROGRESS 0x7 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // type of structure is 13b7203622 2011-02-23 kinaba: // tACECallbackProgressStruc 13b7203622 2011-02-23 kinaba: //------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: // callback function | codes using this structure 13b7203622 2011-02-23 kinaba: // --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- 13b7203622 2011-02-23 kinaba: // StateCallbackProc | ACE_CALLBACK_STATE_PROGRESS 13b7203622 2011-02-23 kinaba: // 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_TYPE_CRCCHECK 0x8 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // type of structure is 13b7203622 2011-02-23 kinaba: // tACECallbackCRCCheckStruc 13b7203622 2011-02-23 kinaba: //------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: // callback function | codes using this structure 13b7203622 2011-02-23 kinaba: // --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- 13b7203622 2011-02-23 kinaba: // StateCallbackProc | ACE_CALLBACK_STATE_ENDCRCCHECK 13b7203622 2011-02-23 kinaba: // 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様 13b7203622 2011-02-23 kinaba: //==============--- Part 2.4: different callback structures ---============ 13b7203622 2011-02-23 kinaba: //様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様 13b7203622 2011-02-23 kinaba: // These are the declarations of the different structures used in the 13b7203622 2011-02-23 kinaba: // unions passed by the callback functions. 13b7203622 2011-02-23 kinaba: //--------------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: // Only the Dll GlobalData is passed to the application. 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: typedef struct sACECallbackGlobalStruc 13b7203622 2011-02-23 kinaba: { 13b7203622 2011-02-23 kinaba: ULONG StructureType; // is ACE_CALLBACK_TYPE_GLOBAL 13b7203622 2011-02-23 kinaba: ULONG Code; // see definition of 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_GLOBAL 13b7203622 2011-02-23 kinaba: ULONG Operation; // ACE_CALLBACK_OPERATION constant 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: pACEGlobalDataStruc GlobalData; // see tACEGlobalDataStruc 13b7203622 2011-02-23 kinaba: } tACECallbackGlobalStruc, 13b7203622 2011-02-23 kinaba: *pACECallbackGlobalStruc; 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: // The Dll GlobalData and the ArchiveData are passed. 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: typedef struct sACECallbackArchiveStruc 13b7203622 2011-02-23 kinaba: { 13b7203622 2011-02-23 kinaba: ULONG StructureType; // is ACE_CALLBACK_TYPE_ARCHIVE 13b7203622 2011-02-23 kinaba: ULONG Code; // see definition of 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_ARCHIVE 13b7203622 2011-02-23 kinaba: ULONG Operation; // ACE_CALLBACK_OPERATION constant 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: pACEGlobalDataStruc GlobalData; // see tACEGlobalDataStruc 13b7203622 2011-02-23 kinaba: pACEArchiveDataStruc ArchiveData; // see tACEArchiveDataStruc 13b7203622 2011-02-23 kinaba: } tACECallbackArchiveStruc, 13b7203622 2011-02-23 kinaba: *pACECallbackArchiveStruc; 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: // GlobalData, ArchiveData and FileData are passed. 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: typedef struct sACECallbackArchivedFileStruc 13b7203622 2011-02-23 kinaba: { 13b7203622 2011-02-23 kinaba: ULONG StructureType; // is ACE_CALLBACK_TYPE_ARCHIVEDFILE 13b7203622 2011-02-23 kinaba: ULONG Code; // see definition of 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_ARCHIVEDFILE 13b7203622 2011-02-23 kinaba: ULONG Operation; // ACE_CALLBACK_OPERATION constant 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: pACEGlobalDataStruc GlobalData; // see tACEGlobalDataStruc 13b7203622 2011-02-23 kinaba: pACEArchiveDataStruc ArchiveData; // see tACEArchiveDataStruc 13b7203622 2011-02-23 kinaba: pACEFileDataStruc FileData; // see tACEFileDataStruc 13b7203622 2011-02-23 kinaba: } tACECallbackArchivedFileStruc, 13b7203622 2011-02-23 kinaba: *pACECallbackArchivedFileStruc; 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: // GlobalData, ArchiveData and a FileName are passed. 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: typedef struct sACECallbackRealFileStruc 13b7203622 2011-02-23 kinaba: { 13b7203622 2011-02-23 kinaba: ULONG StructureType; // is ACE_CALLBACK_TYPE_REALFILE 13b7203622 2011-02-23 kinaba: ULONG Code; // see definition of 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_REALFILE 13b7203622 2011-02-23 kinaba: ULONG Operation; // ACE_CALLBACK_OPERATION constant 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: pACEGlobalDataStruc GlobalData; // see tACEGlobalDataStruc 13b7203622 2011-02-23 kinaba: pACEArchiveDataStruc ArchiveData; // see tACEArchiveDataStruc 13b7203622 2011-02-23 kinaba: LPSTR FileName; // name of file 13b7203622 2011-02-23 kinaba: } tACECallbackRealFileStruc, 13b7203622 2011-02-23 kinaba: *pACECallbackRealFileStruc; 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: // GlobalData, ArchiveData, the path of temp directory and the 13b7203622 2011-02-23 kinaba: // bytes required in temp directory (archive size) are passed. 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: typedef struct sACECallbackSpaceStruc 13b7203622 2011-02-23 kinaba: { 13b7203622 2011-02-23 kinaba: ULONG StructureType; // is ACE_CALLBACK_TYPE_SPACE 13b7203622 2011-02-23 kinaba: ULONG Code; // see definition of 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_SPACE 13b7203622 2011-02-23 kinaba: ULONG Operation; 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: pACEGlobalDataStruc GlobalData; // see tACEGlobalDataStruc 13b7203622 2011-02-23 kinaba: pACEArchiveDataStruc ArchiveData; // see tACEArchiveDataStruc 13b7203622 2011-02-23 kinaba: LPSTR Directory; // path of directory 13b7203622 2011-02-23 kinaba: DWORDLONG ArchiveSize; // bytes required in temp dir 13b7203622 2011-02-23 kinaba: } tACECallbackSpaceStruc, 13b7203622 2011-02-23 kinaba: *pACECallbackSpaceStruc; 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: // GlobalData, ArchiveData and SFXFileName are passed. 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: typedef struct sACECallbackSFXFileStruc 13b7203622 2011-02-23 kinaba: { 13b7203622 2011-02-23 kinaba: ULONG StructureType; // is ACE_CALLBACK_TYPE_SFXFILE 13b7203622 2011-02-23 kinaba: ULONG Code; // see definition of 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_SFXFILE 13b7203622 2011-02-23 kinaba: ULONG Operation; // ACE_CALLBACK_OPERATION constant 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: pACEGlobalDataStruc GlobalData; // see tACEGlobalDataStruc 13b7203622 2011-02-23 kinaba: pACEArchiveDataStruc ArchiveData; // see tACEArchiveDataStruc 13b7203622 2011-02-23 kinaba: LPSTR SFXFileName; // name of SFX 13b7203622 2011-02-23 kinaba: } tACECallbackSFXFileStruc, 13b7203622 2011-02-23 kinaba: *pACECallbackSFXFileStruc; 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: // GlobalData, ArchiveData and CopyData are passed. 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: typedef struct sACECallbackCopyStruc 13b7203622 2011-02-23 kinaba: { 13b7203622 2011-02-23 kinaba: ULONG StructureType; // is ACE_CALLBACK_TYPE_COPY 13b7203622 2011-02-23 kinaba: ULONG Code; // see definition of 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_COPY 13b7203622 2011-02-23 kinaba: ULONG Operation; // ACE_CALLBACK_OPERATION constant 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: pACEGlobalDataStruc GlobalData; // see tACEGlobalDataStruc 13b7203622 2011-02-23 kinaba: pACEArchiveDataStruc ArchiveData; // see tACEArchiveDataStruc 13b7203622 2011-02-23 kinaba: pACECopyInfoStruc CopyData; // see tACECopyInfoStruc 13b7203622 2011-02-23 kinaba: } tACECallbackCopyStruc, 13b7203622 2011-02-23 kinaba: *pACECallbackCopyStruc; 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: // GlobalData, ArchiveData, FileData and ProgressData are passed. 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: typedef struct sACECallbackProgressStruc 13b7203622 2011-02-23 kinaba: { 13b7203622 2011-02-23 kinaba: ULONG StructureType; // is ACE_CALLBACK_TYPE_PROGRESS 13b7203622 2011-02-23 kinaba: ULONG Code; // see definition of 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_PROGRESS 13b7203622 2011-02-23 kinaba: ULONG Operation; // ACE_CALLBACK_OPERATION constant 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: pACEGlobalDataStruc GlobalData; // see tACEGlobalDataStruc 13b7203622 2011-02-23 kinaba: pACEArchiveDataStruc ArchiveData; // see tACEArchiveDataStruc 13b7203622 2011-02-23 kinaba: pACEFileDataStruc FileData; // see tACEFileDataStruc 13b7203622 2011-02-23 kinaba: pACEProgressDataStruc ProgressData; // see tACEProgressDataStruc 13b7203622 2011-02-23 kinaba: } tACECallbackProgressStruc, 13b7203622 2011-02-23 kinaba: *pACECallbackProgressStruc; 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: // GlobalData, ArchiveData, FileData and CRC-check result are passed. 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: typedef struct sACECallbackCRCCheckStruc 13b7203622 2011-02-23 kinaba: { 13b7203622 2011-02-23 kinaba: ULONG StructureType; // is ACE_CALLBACK_TYPE_CRCCHECK 13b7203622 2011-02-23 kinaba: ULONG Code; // see definition of 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_CRCCHECK 13b7203622 2011-02-23 kinaba: ULONG Operation; // ACE_CALLBACK_OPERATION constant 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: pACEGlobalDataStruc GlobalData; // see tACEGlobalDataStruc 13b7203622 2011-02-23 kinaba: pACEArchiveDataStruc ArchiveData; // see tACEArchiveDataStruc 13b7203622 2011-02-23 kinaba: pACEFileDataStruc FileData; // see tACEFileDataStruc 13b7203622 2011-02-23 kinaba: BOOL CRCOk; // CRC-check result 13b7203622 2011-02-23 kinaba: } tACECallbackCRCCheckStruc, 13b7203622 2011-02-23 kinaba: *pACECallbackCRCCheckStruc; 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様 13b7203622 2011-02-23 kinaba: //=================--- Part 2.5: info callback function ---================ 13b7203622 2011-02-23 kinaba: //様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様 13b7203622 2011-02-23 kinaba: // Declaration of ACEInfoCallbackProc() parameter and explanation of 13b7203622 2011-02-23 kinaba: // callback info codes. 13b7203622 2011-02-23 kinaba: //--------------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: // Union parameter used at ACEInfoCallbackProc(). 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: typedef union sACEInfoCallbackProcStruc 13b7203622 2011-02-23 kinaba: { 13b7203622 2011-02-23 kinaba: ULONG StructureType; // indicates which of the fol- 13b7203622 2011-02-23 kinaba: // lowing structures is used 13b7203622 2011-02-23 kinaba: tACECallbackGlobalStruc Global; 13b7203622 2011-02-23 kinaba: tACECallbackArchiveStruc Archive; 13b7203622 2011-02-23 kinaba: tACECallbackRealFileStruc RealFile; 13b7203622 2011-02-23 kinaba: tACECallbackCopyStruc Copy; 13b7203622 2011-02-23 kinaba: } tACEInfoCallbackProcStruc; 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: // These values are passed to the ACEInfoCallbackProc callback function 13b7203622 2011-02-23 kinaba: // to inform the application about actions (smaller parts of operations) 13b7203622 2011-02-23 kinaba: // which may take some time or other things that might be of interest. 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_INFO_GENERALKEY 0x100 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // key is a general one (no own AV; own key 13b7203622 2011-02-23 kinaba: // is obtainable for a special price!?) 13b7203622 2011-02-23 kinaba: // not used in ACL 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_GLOBAL 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACERegister 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_INFO_TMPARCCREATE 0x110 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // creating temporary archive for changes 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_ARCHIVE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACEAdd 13b7203622 2011-02-23 kinaba: // ACESetComments 13b7203622 2011-02-23 kinaba: // ACEEncryptFiles 13b7203622 2011-02-23 kinaba: // ACEAddSFX 13b7203622 2011-02-23 kinaba: // ACELock 13b7203622 2011-02-23 kinaba: // ACEAddAV 13b7203622 2011-02-23 kinaba: // ACERepair 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_INFO_TMPARCCREATEEND 0x111 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // finished creating temporary archive 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_ARCHIVE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACEAdd 13b7203622 2011-02-23 kinaba: // ACESetComments 13b7203622 2011-02-23 kinaba: // ACEEncryptFiles 13b7203622 2011-02-23 kinaba: // ACEAddSFX 13b7203622 2011-02-23 kinaba: // ACELock 13b7203622 2011-02-23 kinaba: // ACEAddAV 13b7203622 2011-02-23 kinaba: // ACERepair 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_INFO_ADDRECREC 0x112 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // adding recovery record 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_ARCHIVE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACEAdd 13b7203622 2011-02-23 kinaba: // ACESetComments 13b7203622 2011-02-23 kinaba: // ACEEncryptFiles 13b7203622 2011-02-23 kinaba: // ACEAddSFX 13b7203622 2011-02-23 kinaba: // ACELock 13b7203622 2011-02-23 kinaba: // ACEAddAV 13b7203622 2011-02-23 kinaba: // ACEAddRecoveryRecord 13b7203622 2011-02-23 kinaba: // ACERepair 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_INFO_ADDRECRECEND 0x113 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // finished adding recovery record 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_ARCHIVE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACEAdd 13b7203622 2011-02-23 kinaba: // ACESetComments 13b7203622 2011-02-23 kinaba: // ACEEncryptFiles 13b7203622 2011-02-23 kinaba: // ACEAddSFX 13b7203622 2011-02-23 kinaba: // ACELock 13b7203622 2011-02-23 kinaba: // ACEAddAV 13b7203622 2011-02-23 kinaba: // ACEAddRecoveryRecord 13b7203622 2011-02-23 kinaba: // ACERepair 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_INFO_RECREC 0x114 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // trying to recover files by recovery 13b7203622 2011-02-23 kinaba: // record; end indicated by 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_INFO_RECOVERED or 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_INFO_NODAMAGE 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_ARCHIVE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACERepair 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_INFO_NORECREC 0x115 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // found no recovery record 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_ARCHIVE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACERepair 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_INFO_RECOVERED 0x116 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // archive has been fully recovered 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_ARCHIVE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACERepair 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_INFO_NODAMAGE 0x117 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // ACERepair detected by recovery record that 13b7203622 2011-02-23 kinaba: // the archive is not damaged 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_ARCHIVE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACERepair 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_INFO_FNDMAINHEAD 0x118 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // found archive header 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_ARCHIVE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACERepair 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_INFO_FILELISTCREATE 0x119 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // creating a file list of specified files 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_ARCHIVE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACEList 13b7203622 2011-02-23 kinaba: // ACEDelete 13b7203622 2011-02-23 kinaba: // ACETest 13b7203622 2011-02-23 kinaba: // ACEExtract 13b7203622 2011-02-23 kinaba: // ACEAdd 13b7203622 2011-02-23 kinaba: // ACESetComments 13b7203622 2011-02-23 kinaba: // ACEEncryptFiles 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_INFO_FILELISTCREATEEND 0x11a 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // sent when creating the list of files 13b7203622 2011-02-23 kinaba: // is finished 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_ARCHIVE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACEList 13b7203622 2011-02-23 kinaba: // ACEDelete 13b7203622 2011-02-23 kinaba: // ACETest 13b7203622 2011-02-23 kinaba: // ACEExtract 13b7203622 2011-02-23 kinaba: // ACEAdd 13b7203622 2011-02-23 kinaba: // ACESetComments 13b7203622 2011-02-23 kinaba: // ACEEncryptFiles 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_INFO_FILESORT 0x11b 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // sorting files (for solid compression) 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_ARCHIVE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACEAdd 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_INFO_FILESORTEND 0x11c 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // sorting files (for solid compression) 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_ARCHIVE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACEAdd 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_INFO_COPYEND 0x11d 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // copying a file finished 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_ARCHIVE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACEAdd 13b7203622 2011-02-23 kinaba: // ACESetComments 13b7203622 2011-02-23 kinaba: // ACEEncryptFiles 13b7203622 2011-02-23 kinaba: // ACEAddSFX 13b7203622 2011-02-23 kinaba: // ACELock 13b7203622 2011-02-23 kinaba: // ACEAddAV 13b7203622 2011-02-23 kinaba: // ACERepair 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_INFO_FILELISTADD 0x140 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // called at creation of file list; the name 13b7203622 2011-02-23 kinaba: // of the file just added to file list is 13b7203622 2011-02-23 kinaba: // passed in tACECallbackRealFileStruc 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_REALFILE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACEList 13b7203622 2011-02-23 kinaba: // ACEDelete 13b7203622 2011-02-23 kinaba: // ACETest 13b7203622 2011-02-23 kinaba: // ACEExtract 13b7203622 2011-02-23 kinaba: // ACEAdd 13b7203622 2011-02-23 kinaba: // ACESetComments 13b7203622 2011-02-23 kinaba: // ACEEncryptFiles 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_INFO_COPY 0x150 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // copying a file; file name, file size and 13b7203622 2011-02-23 kinaba: // copied bytes are passed via 13b7203622 2011-02-23 kinaba: // tACECallbackCopyStruc 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_COPY 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACEAdd 13b7203622 2011-02-23 kinaba: // ACESetComments 13b7203622 2011-02-23 kinaba: // ACEEncryptFiles 13b7203622 2011-02-23 kinaba: // ACEAddSFX 13b7203622 2011-02-23 kinaba: // ACELock 13b7203622 2011-02-23 kinaba: // ACEAddAV 13b7203622 2011-02-23 kinaba: // ACERepair 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様 13b7203622 2011-02-23 kinaba: //=================--- Part 2.6: error callback function ---=============== 13b7203622 2011-02-23 kinaba: //様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様 13b7203622 2011-02-23 kinaba: // Declaration of ACEErrorCallbackProc() parameter and explanation of 13b7203622 2011-02-23 kinaba: // callback error codes. 13b7203622 2011-02-23 kinaba: //--------------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: // Union parameter used at ACEErrorCallbackProc(). 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: typedef union sACEErrorCallbackProcStruc 13b7203622 2011-02-23 kinaba: { 13b7203622 2011-02-23 kinaba: ULONG StructureType; // indicates which of the fol- 13b7203622 2011-02-23 kinaba: // lowing structures is used 13b7203622 2011-02-23 kinaba: tACECallbackGlobalStruc Global; 13b7203622 2011-02-23 kinaba: tACECallbackArchiveStruc Archive; 13b7203622 2011-02-23 kinaba: tACECallbackArchivedFileStruc ArchivedFile; 13b7203622 2011-02-23 kinaba: tACECallbackRealFileStruc RealFile; 13b7203622 2011-02-23 kinaba: tACECallbackSpaceStruc Space; 13b7203622 2011-02-23 kinaba: tACECallbackSFXFileStruc SFXFile; 13b7203622 2011-02-23 kinaba: } tACEErrorCallbackProcStruc; 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: // This structure is used by the ACEErrorCallback function to inform 13b7203622 2011-02-23 kinaba: // the application about errors. The Code field of the used structure 13b7203622 2011-02-23 kinaba: // contains an ACE_CALLBACK_ERROR value. At most problems modifications 13b7203622 2011-02-23 kinaba: // to the passed structure can be made to fix it. Other problems can not 13b7203622 2011-02-23 kinaba: // be solved and cause an operation abort immediately. 13b7203622 2011-02-23 kinaba: // ErrorCallbackProc() has to return either ACE_CALLBACK_RETURN_OK or 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_RETURN_CANCEL. 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_ERROR_MEMORY 0x200 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // not enough memory to perform operation 13b7203622 2011-02-23 kinaba: // (dictionary too large?) 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_GLOBAL 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // all 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_ERROR_REGISTER 0x201 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // registration key is invalid (or wrong 13b7203622 2011-02-23 kinaba: // format?); not used in ACL 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_GLOBAL 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACERegister 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_ERROR_READKEY 0x202 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // key could not be read (does not exist or 13b7203622 2011-02-23 kinaba: // is invalid); not used in ACL 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_GLOBAL 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACEInitDll 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_ERROR_WRITEKEY 0x203 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // could not write key; not used in ACL 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_GLOBAL 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACERegister 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_ERROR_NOWINACEKEY 0x204 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // key not valid for WinACE; not used in ACL 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_GLOBAL 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACERegister 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_ERROR_NOACTIVEACEKEY 0x205 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // key not valid for ActiveACE; not used in ACL 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_GLOBAL 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACERegister 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_ERROR_UNCSPACE 0x206 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // Win95_OSR1-bug: it is impossible to 13b7203622 2011-02-23 kinaba: // get available space of network drives by 13b7203622 2011-02-23 kinaba: // an UNC name; ACE will not stop but 13b7203622 2011-02-23 kinaba: // assumes there are 4Gb free 13b7203622 2011-02-23 kinaba: // --> the operation might fail if free 13b7203622 2011-02-23 kinaba: // disk space is low 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_GLOBAL 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // all 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_ERROR_MODIFYVOLUME 0x220 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // modification of volumes not possible 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_ARCHIVE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACEAdd 13b7203622 2011-02-23 kinaba: // ACESetComments 13b7203622 2011-02-23 kinaba: // ACEEncryptFiles 13b7203622 2011-02-23 kinaba: // ACEAddSFX 13b7203622 2011-02-23 kinaba: // ACELock 13b7203622 2011-02-23 kinaba: // ACEAddAV 13b7203622 2011-02-23 kinaba: // ACEAddRecoveryRecord 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_ERROR_MODIFYLOCKEDARCHIVE 0x221 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // modification of locked archive not possible 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_ARCHIVE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACEAdd 13b7203622 2011-02-23 kinaba: // ACESetComments 13b7203622 2011-02-23 kinaba: // ACEEncryptFiles 13b7203622 2011-02-23 kinaba: // ACEAddSFX 13b7203622 2011-02-23 kinaba: // ACELock 13b7203622 2011-02-23 kinaba: // ACEAddAV 13b7203622 2011-02-23 kinaba: // ACEAddRecoveryRecord 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_ERROR_AV 0x222 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // AV of archive is NOT ok or does not match 13b7203622 2011-02-23 kinaba: // to the users AV (not used in ACL) 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_ARCHIVE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACEReadArchiveData 13b7203622 2011-02-23 kinaba: // ACEList 13b7203622 2011-02-23 kinaba: // ACEDelete 13b7203622 2011-02-23 kinaba: // ACETest 13b7203622 2011-02-23 kinaba: // ACEExtract 13b7203622 2011-02-23 kinaba: // ACEAdd 13b7203622 2011-02-23 kinaba: // ACERepair 13b7203622 2011-02-23 kinaba: // ACESetComments 13b7203622 2011-02-23 kinaba: // ACEEncryptFiles 13b7203622 2011-02-23 kinaba: // ACEAddSFX 13b7203622 2011-02-23 kinaba: // ACEAddAV 13b7203622 2011-02-23 kinaba: // ACELock 13b7203622 2011-02-23 kinaba: // ACEAddRecoveryRecord 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_ERROR_TOODAMAGED 0x223 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // can not repair by recovery record but 13b7203622 2011-02-23 kinaba: // can continue with normal repair 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_ARCHIVE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACERepair 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_ERROR_ARCHIVEEXISTS 0x224 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // destination file name already used; 13b7203622 2011-02-23 kinaba: // may occur if at 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_ERROR_ARCHIVESPACE a 13b7203622 2011-02-23 kinaba: // direcory is specified where a file 13b7203622 2011-02-23 kinaba: // with the same name as the current archive 13b7203622 2011-02-23 kinaba: // already exists 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_ARCHIVE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACEAdd 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_ERROR_OPENREPAIRARCHIVE 0x225 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // could not create archive for repairing 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_ARCHIVE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACERepair 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_ERROR_OPENARCHIVEREAD 0x226 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // could not open archive/volume for reading 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_ARCHIVE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACEReadArchiveData 13b7203622 2011-02-23 kinaba: // ACEList 13b7203622 2011-02-23 kinaba: // ACETest 13b7203622 2011-02-23 kinaba: // ACEExtract 13b7203622 2011-02-23 kinaba: // ACERepair 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_ERROR_OPENARCHIVEWRITE 0x227 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // could not open archive/volume for writing 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_ARCHIVE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACEDelete 13b7203622 2011-02-23 kinaba: // ACEAdd 13b7203622 2011-02-23 kinaba: // ACESetComments 13b7203622 2011-02-23 kinaba: // ACEEncryptFiles 13b7203622 2011-02-23 kinaba: // ACEAddSFX 13b7203622 2011-02-23 kinaba: // ACELock 13b7203622 2011-02-23 kinaba: // ACEAddAV 13b7203622 2011-02-23 kinaba: // ACEAddRecoveryRecord 13b7203622 2011-02-23 kinaba: // ACERepair 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_ERROR_READARCHIVE 0x228 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // error reading from archive 13b7203622 2011-02-23 kinaba: // (source disk removed?) 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_ARCHIVE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACEReadArchiveData 13b7203622 2011-02-23 kinaba: // ACEList 13b7203622 2011-02-23 kinaba: // ACEDelete 13b7203622 2011-02-23 kinaba: // ACETest 13b7203622 2011-02-23 kinaba: // ACEExtract 13b7203622 2011-02-23 kinaba: // ACEAdd 13b7203622 2011-02-23 kinaba: // ACERepair 13b7203622 2011-02-23 kinaba: // ACESetComments 13b7203622 2011-02-23 kinaba: // ACEEncryptFiles 13b7203622 2011-02-23 kinaba: // ACEAddSFX 13b7203622 2011-02-23 kinaba: // ACEAddAV 13b7203622 2011-02-23 kinaba: // ACELock 13b7203622 2011-02-23 kinaba: // ACEAddRecoveryRecord 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_ERROR_WRITEARCHIVE 0x229 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // error writing to archive 13b7203622 2011-02-23 kinaba: // (destination disk removed?) 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_ARCHIVE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACEDelete 13b7203622 2011-02-23 kinaba: // ACEAdd 13b7203622 2011-02-23 kinaba: // ACESetComments 13b7203622 2011-02-23 kinaba: // ACEEncryptFiles 13b7203622 2011-02-23 kinaba: // ACEAddSFX 13b7203622 2011-02-23 kinaba: // ACELock 13b7203622 2011-02-23 kinaba: // ACEAddAV 13b7203622 2011-02-23 kinaba: // ACEAddRecoveryRecord 13b7203622 2011-02-23 kinaba: // ACERepair 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_ERROR_ALREADYSFX 0x22a 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // ca not make to SFX: is already SFX 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_ARCHIVE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACEAddSFX 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_ERROR_ADDSFXTOVOLUME 0x22b 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // adding SFX to volumes not possible 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_ARCHIVE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACEAddSFX 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_ERROR_ARCHIVEBROKEN 0x22c 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // archive is broken (damaged) 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_ARCHIVE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACEReadArchiveData 13b7203622 2011-02-23 kinaba: // ACEList 13b7203622 2011-02-23 kinaba: // ACEDelete 13b7203622 2011-02-23 kinaba: // ACETest 13b7203622 2011-02-23 kinaba: // ACEExtract 13b7203622 2011-02-23 kinaba: // ACEAdd 13b7203622 2011-02-23 kinaba: // ACERepair 13b7203622 2011-02-23 kinaba: // ACESetComments 13b7203622 2011-02-23 kinaba: // ACEEncryptFiles 13b7203622 2011-02-23 kinaba: // ACEAddSFX 13b7203622 2011-02-23 kinaba: // ACEAddAV 13b7203622 2011-02-23 kinaba: // ACELock 13b7203622 2011-02-23 kinaba: // ACEAddRecoveryRecord 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_ERROR_ARCHIVESAVE 0x22d 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // not enough space to save archive; 13b7203622 2011-02-23 kinaba: // but normally 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_ERROR_ARCHIVESPACE 13b7203622 2011-02-23 kinaba: // should allow to change destination 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_ARCHIVE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACEAdd 13b7203622 2011-02-23 kinaba: // ACESetComments 13b7203622 2011-02-23 kinaba: // ACEEncryptFiles 13b7203622 2011-02-23 kinaba: // ACEAddSFX 13b7203622 2011-02-23 kinaba: // ACELock 13b7203622 2011-02-23 kinaba: // ACEAddAV 13b7203622 2011-02-23 kinaba: // ACEAddRecoveryRecord 13b7203622 2011-02-23 kinaba: // ACERepair 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_ERROR_NOFILES 0x22e 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // no files specified/could not find files 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_ARCHIVE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACEList 13b7203622 2011-02-23 kinaba: // ACEDelete 13b7203622 2011-02-23 kinaba: // ACETest 13b7203622 2011-02-23 kinaba: // ACEExtract 13b7203622 2011-02-23 kinaba: // ACEAdd 13b7203622 2011-02-23 kinaba: // ACESetComments 13b7203622 2011-02-23 kinaba: // ACEEncryptFiles 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_ERROR_ISNOTANARCHIVE 0x22f 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // specified archive file is not an 13b7203622 2011-02-23 kinaba: // ACE archive 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_ARCHIVE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACEReadArchiveData 13b7203622 2011-02-23 kinaba: // ACEList 13b7203622 2011-02-23 kinaba: // ACEDelete 13b7203622 2011-02-23 kinaba: // ACETest 13b7203622 2011-02-23 kinaba: // ACEExtract 13b7203622 2011-02-23 kinaba: // ACEAdd 13b7203622 2011-02-23 kinaba: // ACERepair 13b7203622 2011-02-23 kinaba: // ACESetComments 13b7203622 2011-02-23 kinaba: // ACEEncryptFiles 13b7203622 2011-02-23 kinaba: // ACEAddSFX 13b7203622 2011-02-23 kinaba: // ACEAddAV 13b7203622 2011-02-23 kinaba: // ACELock 13b7203622 2011-02-23 kinaba: // ACEAddRecoveryRecord 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_ERROR_TEMPDIRCREATE 0x230 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // could not create file in temp directory 13b7203622 2011-02-23 kinaba: // (write protected or directory does 13b7203622 2011-02-23 kinaba: // not exist) 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_ARCHIVE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACEAdd 13b7203622 2011-02-23 kinaba: // ACESetComments 13b7203622 2011-02-23 kinaba: // ACEEncryptFiles 13b7203622 2011-02-23 kinaba: // ACEAddSFX 13b7203622 2011-02-23 kinaba: // ACELock 13b7203622 2011-02-23 kinaba: // ACEAddAV 13b7203622 2011-02-23 kinaba: // ACEAddRecoveryRecord 13b7203622 2011-02-23 kinaba: // ACERepair 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_ERROR_HIGHERVERSION 0x231 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // this Dll version is not able to handle 13b7203622 2011-02-23 kinaba: // the archive 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_ARCHIVE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACEAdd 13b7203622 2011-02-23 kinaba: // ACESetComments 13b7203622 2011-02-23 kinaba: // ACEEncryptFiles 13b7203622 2011-02-23 kinaba: // ACEAddSFX 13b7203622 2011-02-23 kinaba: // ACELock 13b7203622 2011-02-23 kinaba: // ACEAddAV 13b7203622 2011-02-23 kinaba: // ACEAddRecoveryRecord 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_ERROR_CREATIONNAMEINUSE 0x240 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // name used by directory 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_ARCHIVEDFILE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACEExtract 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_ERROR_ENCRYPTIONCRC 0x242 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // encryption failed because of CRC-Error at 13b7203622 2011-02-23 kinaba: // decompression 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_ARCHIVEDFILE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACEEncryptFiles 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_ERROR_READ 0x243 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // error reading file to be added 13b7203622 2011-02-23 kinaba: // (source disk removed?) 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_ARCHIVEDFILE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACEAdd 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_ERROR_WRITE 0x244 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // error at extraction 13b7203622 2011-02-23 kinaba: // (destination disk removed?) 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_ARCHIVEDFILE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACEExtract 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_ERROR_OPENREAD 0x245 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // error opening file for reading 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_ARCHIVEDFILE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACEAdd 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_ERROR_OPENWRITE 0x246 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // error opening file for writing 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_ARCHIVEDFILE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACEExtract 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_ERROR_FILENAMETOOLONG 0x247 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // resulting file name too long 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_ARCHIVEDFILE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACEAdd 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_ERROR_REPACKCRC 0x248 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // CRC-check error at recompression 13b7203622 2011-02-23 kinaba: // (archive broken or wrong password) 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_ARCHIVEDFILE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACEDelete 13b7203622 2011-02-23 kinaba: // ACEAdd 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_ERROR_EXCLUDEPATH 0x249 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // could not exclude path of file names; two 13b7203622 2011-02-23 kinaba: // or more files would have the same name 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_ARCHIVEDFILE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACEAdd 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_ERROR_METHOD 0x24a 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // compression method not known to this 13b7203622 2011-02-23 kinaba: // Dll version 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_ARCHIVEDFILE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACEDelete 13b7203622 2011-02-23 kinaba: // ACETest 13b7203622 2011-02-23 kinaba: // ACEExtract 13b7203622 2011-02-23 kinaba: // ACEAdd 13b7203622 2011-02-23 kinaba: // ACEEncryptFiles 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_ERROR_EXTRACTSPACE 0x24b 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // not enough space to extract file 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_ARCHIVEDFILE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACEExtract 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_ERROR_CREATION 0x24c 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // creation failed (write-protection?) 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_ARCHIVEDFILE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACEExtract 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_ERROR_OVERWRITEDELETE 0x24d 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // could not overwrite because deletion of 13b7203622 2011-02-23 kinaba: // file failed 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_ARCHIVEDFILE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACEExtract 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_ERROR_MOVEDELETE 0x260 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // deletion of file or directory failed 13b7203622 2011-02-23 kinaba: // (move operation) 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_REALFILE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACEAdd 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_ERROR_TEMPDIRSPACE 0x270 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // not enough space at current temp directory 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_SPACE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACEAdd 13b7203622 2011-02-23 kinaba: // ACESetComments 13b7203622 2011-02-23 kinaba: // ACEEncryptFiles 13b7203622 2011-02-23 kinaba: // ACEAddSFX 13b7203622 2011-02-23 kinaba: // ACEAddAV 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_ERROR_ARCHIVESPACE 0x271 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // not enough space to save archive 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_SPACE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACEDelete 13b7203622 2011-02-23 kinaba: // ACEAdd 13b7203622 2011-02-23 kinaba: // ACESetComments 13b7203622 2011-02-23 kinaba: // ACEEncryptFiles 13b7203622 2011-02-23 kinaba: // ACEAddSFX 13b7203622 2011-02-23 kinaba: // ACELock 13b7203622 2011-02-23 kinaba: // ACEAddAV 13b7203622 2011-02-23 kinaba: // ACEAddRecoveryRecord 13b7203622 2011-02-23 kinaba: // ACERepair 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_ERROR_READINGSFXFILE 0x280 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // error reading SFX file: 13b7203622 2011-02-23 kinaba: // is no SFX file, 13b7203622 2011-02-23 kinaba: // file does not exist or could not be opened 13b7203622 2011-02-23 kinaba: // for reading 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_SFXFILE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACEAdd 13b7203622 2011-02-23 kinaba: // ACEAddSFX 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様 13b7203622 2011-02-23 kinaba: //================--- Part 2.7: request callback function ---============== 13b7203622 2011-02-23 kinaba: //様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様 13b7203622 2011-02-23 kinaba: // Declaration of ACERequestCallbackProc() parameter and explanation of 13b7203622 2011-02-23 kinaba: // callback request codes. 13b7203622 2011-02-23 kinaba: //--------------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: // Union parameter used at ACERequestCallbackProc(). 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: typedef union sACERequestCallbackProcStruc 13b7203622 2011-02-23 kinaba: { 13b7203622 2011-02-23 kinaba: ULONG StructureType; // indicates which of the fol- 13b7203622 2011-02-23 kinaba: // lowing structures is used 13b7203622 2011-02-23 kinaba: tACECallbackGlobalStruc Global; 13b7203622 2011-02-23 kinaba: tACECallbackArchiveStruc Archive; 13b7203622 2011-02-23 kinaba: tACECallbackArchivedFileStruc ArchivedFile; 13b7203622 2011-02-23 kinaba: tACECallbackRealFileStruc RealFile; 13b7203622 2011-02-23 kinaba: } tACERequestCallbackProcStruc; 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: // Question constants are passed to the RequestCallbackProc callback 13b7203622 2011-02-23 kinaba: // function to request further data. 13b7203622 2011-02-23 kinaba: // RequestCallbackProc may return ACE_CALLBACK_RETURN_OK, 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_RETURN_NO or ACE_CALLBACK_RETURN_CANCEL. 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_REQUEST_REGISTER 0x300 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // Global.UserAV has to be set 13b7203622 2011-02-23 kinaba: // to continue registration process; 13b7203622 2011-02-23 kinaba: // not used in ACL 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_GLOBAL 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACERegister 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_REQUEST_MARKASSOLID 0x320 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // ArchiveHeader damaged, 13b7203622 2011-02-23 kinaba: // set solid flag for the new archive? 13b7203622 2011-02-23 kinaba: // (in case of doubt return yes!) 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_ARCHIVE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACERepair 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_REQUEST_CHANGEVOLUME 0x321 13b7203622 2011-02-23 kinaba: // Asks for permission to process next volume. 13b7203622 2011-02-23 kinaba: // If operation is ACE_CALLBACK_OPERATION_ADD 13b7203622 2011-02-23 kinaba: // then a new volume will be created. 13b7203622 2011-02-23 kinaba: // The application may change the name 13b7203622 2011-02-23 kinaba: // of the archive by modifying 13b7203622 2011-02-23 kinaba: // ArchiveData->ArchiveName 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_ARCHIVE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACEDelete 13b7203622 2011-02-23 kinaba: // ACEAdd 13b7203622 2011-02-23 kinaba: // ACESetComments 13b7203622 2011-02-23 kinaba: // ACEEncryptFiles 13b7203622 2011-02-23 kinaba: // ACEList 13b7203622 2011-02-23 kinaba: // ACETest 13b7203622 2011-02-23 kinaba: // ACEExtract 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_REQUEST_ARCHIVEEXISTS 0x322 13b7203622 2011-02-23 kinaba: // Asks whether to overwrite a file with 13b7203622 2011-02-23 kinaba: // the same name as the archive. 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_ARCHIVE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACEDelete 13b7203622 2011-02-23 kinaba: // ACEAdd 13b7203622 2011-02-23 kinaba: // ACESetComments 13b7203622 2011-02-23 kinaba: // ACEEncryptFiles 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_REQUEST_OVERWRITE 0x340 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // Overwrite existing file? 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_ARCHIVEDFILE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACEAdd 13b7203622 2011-02-23 kinaba: // ACEExtract 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_REQUEST_DELARCHIVEDSYSFILE 0x341 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // Delete rdonly/hidden/system file 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_ARCHIVEDFILE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACEDelete 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_REQUEST_ADDBROKENFILE 0x342 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // repair function found file with 13b7203622 2011-02-23 kinaba: // broken header, add file? 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_ARCHIVEDFILE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACERepair 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_REQUEST_PASSWORD 0x343 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // password required; attention: may be 13b7203622 2011-02-23 kinaba: // decryption _and_ encryption; but passwords 13b7203622 2011-02-23 kinaba: // can be different --> better changing 13b7203622 2011-02-23 kinaba: // passwords at StateCallbackProc 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_ARCHIVEDFILE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACEDelete 13b7203622 2011-02-23 kinaba: // ACETest 13b7203622 2011-02-23 kinaba: // ACEExtract 13b7203622 2011-02-23 kinaba: // ACEAdd 13b7203622 2011-02-23 kinaba: // ACEEncryptFiles 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_REQUEST_OVERWRITESYSFILE 0x344 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // Overwrite rdonly/hidden/system file 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_ARCHIVEDFILE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACEAdd 13b7203622 2011-02-23 kinaba: // ACEExtract 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_REQUEST_MOVEDELREALSYSFILE 0x360 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // Delete rdonly/hidden/system file 13b7203622 2011-02-23 kinaba: // (move to archive operation) 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_REALFILE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACEAdd 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様 13b7203622 2011-02-23 kinaba: //=================--- Part 2.8: state callback function ---=============== 13b7203622 2011-02-23 kinaba: //様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様 13b7203622 2011-02-23 kinaba: // Declaration of ACEStateCallbackProc() parameter and explanation of 13b7203622 2011-02-23 kinaba: // callback state codes. 13b7203622 2011-02-23 kinaba: //--------------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: // Union parameter used at ACEStateCallbackProc(). 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: typedef union sACEStateCallbackProcStruc 13b7203622 2011-02-23 kinaba: { 13b7203622 2011-02-23 kinaba: ULONG StructureType; // indicates which of the fol- 13b7203622 2011-02-23 kinaba: // lowing structures is used 13b7203622 2011-02-23 kinaba: tACECallbackArchiveStruc Archive; 13b7203622 2011-02-23 kinaba: tACECallbackArchivedFileStruc ArchivedFile; 13b7203622 2011-02-23 kinaba: tACECallbackArchivedFileStruc RealFile; 13b7203622 2011-02-23 kinaba: tACECallbackProgressStruc Progress; 13b7203622 2011-02-23 kinaba: tACECallbackCRCCheckStruc CRCCheck; 13b7203622 2011-02-23 kinaba: } tACEStateCallbackProcStruc; 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: // Calls to (*StateCallbackProc)() with ACE_CALLBACK_STATE values in the 13b7203622 2011-02-23 kinaba: // Code field are made to enable the application to show the progress of 13b7203622 2011-02-23 kinaba: // an operation. 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_STATE_STARTARCHIVE 0x400 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // procession of archive is about to begin 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_ARCHIVE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACEList 13b7203622 2011-02-23 kinaba: // ACEDelete 13b7203622 2011-02-23 kinaba: // ACETest 13b7203622 2011-02-23 kinaba: // ACEExtract 13b7203622 2011-02-23 kinaba: // ACEAdd 13b7203622 2011-02-23 kinaba: // ACERepair 13b7203622 2011-02-23 kinaba: // ACESetComments 13b7203622 2011-02-23 kinaba: // ACEEncryptFiles 13b7203622 2011-02-23 kinaba: // ACEAddSFX 13b7203622 2011-02-23 kinaba: // ACEAddAV 13b7203622 2011-02-23 kinaba: // ACELock 13b7203622 2011-02-23 kinaba: // ACEAddRecoveryRecord 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_STATE_STARTFILE 0x410 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // procession of file is about to begin 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_ARCHIVEDFILE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACEList 13b7203622 2011-02-23 kinaba: // ACEDelete 13b7203622 2011-02-23 kinaba: // ACETest 13b7203622 2011-02-23 kinaba: // ACEExtract 13b7203622 2011-02-23 kinaba: // ACEAdd 13b7203622 2011-02-23 kinaba: // ACERepair 13b7203622 2011-02-23 kinaba: // ACESetComments 13b7203622 2011-02-23 kinaba: // ACEEncryptFiles 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_STATE_ENDNOCRCCHECK 0x411 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // end of file procession 13b7203622 2011-02-23 kinaba: // (no CRC chceck for this operation) 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_ARCHIVEDFILE 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACEList 13b7203622 2011-02-23 kinaba: // ACEDelete 13b7203622 2011-02-23 kinaba: // ACEAdd 13b7203622 2011-02-23 kinaba: // ACERepair 13b7203622 2011-02-23 kinaba: // ACESetComments 13b7203622 2011-02-23 kinaba: // ACEEncryptFiles 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_STATE_PROGRESS 0x420 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // informs about the progress of a file 13b7203622 2011-02-23 kinaba: // operation 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_PROGRESS 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACEDelete 13b7203622 2011-02-23 kinaba: // ACETest 13b7203622 2011-02-23 kinaba: // ACEExtract 13b7203622 2011-02-23 kinaba: // ACEAdd 13b7203622 2011-02-23 kinaba: // ACERepair 13b7203622 2011-02-23 kinaba: // ACEEncryptFiles 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_CALLBACK_STATE_ENDCRCCHECK 0x430 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: // end of file procession, CRC-check 13b7203622 2011-02-23 kinaba: // result is passed 13b7203622 2011-02-23 kinaba: //--------------------------------------------- 13b7203622 2011-02-23 kinaba: // structure type: 13b7203622 2011-02-23 kinaba: // ACE_CALLBACK_TYPE_CRCCHECK 13b7203622 2011-02-23 kinaba: // operations: 13b7203622 2011-02-23 kinaba: // ACETest 13b7203622 2011-02-23 kinaba: // ACEExtract 13b7203622 2011-02-23 kinaba: // ACEDelete 13b7203622 2011-02-23 kinaba: // ACEAdd 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様 13b7203622 2011-02-23 kinaba: //様様様様=====--- Part 3: Functions supported by UNAceV2.Dll ---====様様様様様様 13b7203622 2011-02-23 kinaba: //様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //--------------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: // 13b7203622 2011-02-23 kinaba: // UnAceV2.Dll supports the following functions: 13b7203622 2011-02-23 kinaba: // 13b7203622 2011-02-23 kinaba: // ACEInitDll 13b7203622 2011-02-23 kinaba: // ACEReadArchiveData 13b7203622 2011-02-23 kinaba: // ACEList 13b7203622 2011-02-23 kinaba: // ACETest 13b7203622 2011-02-23 kinaba: // ACEExtract 13b7203622 2011-02-23 kinaba: // 13b7203622 2011-02-23 kinaba: // First of all - before any other function is called - the Dll has to be 13b7203622 2011-02-23 kinaba: // initialized by ACEInitDll(). Using this function the application has 13b7203622 2011-02-23 kinaba: // to set temporary directory, key file path, comment buffer and 13b7203622 2011-02-23 kinaba: // callback function pointers. 13b7203622 2011-02-23 kinaba: // (callback function pointers can be set to NULL for first-try-runs) 13b7203622 2011-02-23 kinaba: // 13b7203622 2011-02-23 kinaba: // See description of each function for details about their task, input and 13b7203622 2011-02-23 kinaba: // output. Return codes of those functions are listed in part 3.1. 13b7203622 2011-02-23 kinaba: // 13b7203622 2011-02-23 kinaba: //--------------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: // 13b7203622 2011-02-23 kinaba: // Contents: 13b7203622 2011-02-23 kinaba: // Part 3.1: ACE.DLL function return codes 13b7203622 2011-02-23 kinaba: // Part 3.2: functions and parameter structures 13b7203622 2011-02-23 kinaba: // 13b7203622 2011-02-23 kinaba: //--------------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様 13b7203622 2011-02-23 kinaba: //=============--- Part 3.1: ACE.DLL function return codes ---============= 13b7203622 2011-02-23 kinaba: //様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: // These error codes are returned by the ACE.DLL-functions. The meanings 13b7203622 2011-02-23 kinaba: // of the codes are the same, as they are for the exit codes of ACE.EXE. 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_ERROR_NOERROR 0 // no error; operation succesful 13b7203622 2011-02-23 kinaba: #define ACE_ERROR_MEM 1 // insufficient memory 13b7203622 2011-02-23 kinaba: #define ACE_ERROR_FILES 2 // no files specified 13b7203622 2011-02-23 kinaba: #define ACE_ERROR_FOUND 3 // specified archive not found 13b7203622 2011-02-23 kinaba: #define ACE_ERROR_FULL 4 // disk full 13b7203622 2011-02-23 kinaba: #define ACE_ERROR_OPEN 5 // could not open file 13b7203622 2011-02-23 kinaba: #define ACE_ERROR_READ 6 // read error 13b7203622 2011-02-23 kinaba: #define ACE_ERROR_WRITE 7 // write error 13b7203622 2011-02-23 kinaba: #define ACE_ERROR_CLINE 8 // invalid command line 13b7203622 2011-02-23 kinaba: #define ACE_ERROR_CRC 9 // CRC error 13b7203622 2011-02-23 kinaba: #define ACE_ERROR_OTHER 10 // other error 13b7203622 2011-02-23 kinaba: #define ACE_ERROR_EXISTS 11 // file already exists 13b7203622 2011-02-23 kinaba: #define ACE_ERROR_USER 255 // user break (application 13b7203622 2011-02-23 kinaba: // returned cancel code at 13b7203622 2011-02-23 kinaba: // callback function) 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: // These error codes are returned by the ACE.DLL-functions. They are not 13b7203622 2011-02-23 kinaba: // used by ACE.EXE yet. 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #define ACE_ERROR_PARAM 128 // might be used later 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様 13b7203622 2011-02-23 kinaba: //============--- Part 3.2: functions and parameter structures ---========== 13b7203622 2011-02-23 kinaba: //様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //陳陳陳陳陳陳陳陳陳陳陳陳陳 ACEInitDll 陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳 13b7203622 2011-02-23 kinaba: // Initializes ACE dynamic link library. Has to be called before any 13b7203622 2011-02-23 kinaba: // other function call. May be called more than one time. 13b7203622 2011-02-23 kinaba: //------------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: // Input : 13b7203622 2011-02-23 kinaba: // Output: 13b7203622 2011-02-23 kinaba: //------------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: // ACEInitDll() parameter structure. 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: typedef struct sACEInitDllStruc 13b7203622 2011-02-23 kinaba: { 13b7203622 2011-02-23 kinaba: tACEGlobalDataStruc 13b7203622 2011-02-23 kinaba: GlobalData; 13b7203622 2011-02-23 kinaba: CHAR Reserved[64]; // has to be filled with zeroes 13b7203622 2011-02-23 kinaba: } tACEInitDllStruc, 13b7203622 2011-02-23 kinaba: *pACEInitDllStruc; 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: // ACEInitDll() function declaration. 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: INT __stdcall ACEInitDll(pACEInitDllStruc DllData); 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //陳陳陳陳陳陳陳陳陳陳陳 ACEReadArchiveData 陳陳陳陳陳陳陳陳陳陳陳陳陳陳 13b7203622 2011-02-23 kinaba: // Tests a file whether it is an archive or not and reads out the archive 13b7203622 2011-02-23 kinaba: // data. 13b7203622 2011-02-23 kinaba: //------------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: // ACEReadArchiveData() parameter structure. 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: typedef struct sACEReadArchiveDataStruc 13b7203622 2011-02-23 kinaba: { 13b7203622 2011-02-23 kinaba: pACEArchiveDataStruc // if this pointer is NULL, the 13b7203622 2011-02-23 kinaba: ArchiveData; // file passed to ACEReadArchiveData 13b7203622 2011-02-23 kinaba: // is no archive; otherwise it points 13b7203622 2011-02-23 kinaba: // to a tACEArchiveDataStruc structure 13b7203622 2011-02-23 kinaba: // that contains information about the 13b7203622 2011-02-23 kinaba: // archive 13b7203622 2011-02-23 kinaba: CHAR Reserved[64]; // has to be filled with zeroes 13b7203622 2011-02-23 kinaba: } tACEReadArchiveDataStruc, 13b7203622 2011-02-23 kinaba: *pACEReadArchiveDataStruc; 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: // ACEReadArchiveData() function declaration. 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: INT __stdcall ACEReadArchiveData(LPSTR ArchiveName, 13b7203622 2011-02-23 kinaba: pACEReadArchiveDataStruc ArchiveData); 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //陳陳陳陳陳陳陳陳陳陳陳陳陳陳 ACEList 陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳 13b7203622 2011-02-23 kinaba: // Passes the specified files in the archive to StateCallbackProc(). 13b7203622 2011-02-23 kinaba: //------------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: // ACEList() parameter structure. 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: typedef struct sACEListStruc 13b7203622 2011-02-23 kinaba: { 13b7203622 2011-02-23 kinaba: tACEFilesStruc // specifies files to be listed; 13b7203622 2011-02-23 kinaba: Files; // see tACEFilesStruc structure 13b7203622 2011-02-23 kinaba: CHAR Reserved[64]; // has to be filled with zeroes 13b7203622 2011-02-23 kinaba: } tACEListStruc, 13b7203622 2011-02-23 kinaba: *pACEListStruc; 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: // ACEList() function declaration. 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: INT __stdcall ACEList(LPSTR ArchiveName, pACEListStruc List); 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //陳陳陳陳陳陳陳陳陳陳陳陳陳陳 ACETest 陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳 13b7203622 2011-02-23 kinaba: // Tests specified files in archive. 13b7203622 2011-02-23 kinaba: //------------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: // ACETest() parameter structure. 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: typedef struct sACETestStruc 13b7203622 2011-02-23 kinaba: { 13b7203622 2011-02-23 kinaba: tACEFilesStruc // specifies files to test; 13b7203622 2011-02-23 kinaba: Files; // see tACEFilesStruc structure 13b7203622 2011-02-23 kinaba: LPSTR DecryptPassword; // zero-terminated string, 13b7203622 2011-02-23 kinaba: // case-sensitive (maxlen=56) 13b7203622 2011-02-23 kinaba: CHAR Reserved[64]; // has to be filled with zeroes 13b7203622 2011-02-23 kinaba: } tACETestStruc, 13b7203622 2011-02-23 kinaba: *pACETestStruc; 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: // ACETest() function declaration. 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: INT __stdcall ACETest(LPSTR ArchiveName, pACETestStruc Test); 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //陳陳陳陳陳陳陳陳陳陳陳陳陳 ACEExtract 陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳 13b7203622 2011-02-23 kinaba: // Extracts specified files. 13b7203622 2011-02-23 kinaba: //------------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: // ACEExtract() parameter structure. 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: typedef struct sACEExtractStruc 13b7203622 2011-02-23 kinaba: { 13b7203622 2011-02-23 kinaba: tACEFilesStruc // specifies files to extract; 13b7203622 2011-02-23 kinaba: Files; // see tACEFilesStruc structure 13b7203622 2011-02-23 kinaba: LPSTR DestinationDir; // directory to extract files to 13b7203622 2011-02-23 kinaba: BOOL ExcludePath; // extract files without path 13b7203622 2011-02-23 kinaba: LPSTR DecryptPassword; // password for decryption (if files 13b7203622 2011-02-23 kinaba: // are encrypted); 13b7203622 2011-02-23 kinaba: // zero-terminated string, 13b7203622 2011-02-23 kinaba: // case-sensitive (maxlen=56) 13b7203622 2011-02-23 kinaba: CHAR Reserved[64]; // has to be filled with zeroes 13b7203622 2011-02-23 kinaba: } tACEExtractStruc, 13b7203622 2011-02-23 kinaba: *pACEExtractStruc; 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: // ACEExtract() function declaration. 13b7203622 2011-02-23 kinaba: //----------------------------------------------------------------------- 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: INT __stdcall ACEExtract(LPSTR ArchiveName, 13b7203622 2011-02-23 kinaba: pACEExtractStruc Extract); 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: 13b7203622 2011-02-23 kinaba: #ifdef __cplusplus 13b7203622 2011-02-23 kinaba: } 13b7203622 2011-02-23 kinaba: #endif 13b7203622 2011-02-23 kinaba: #endif 13b7203622 2011-02-23 kinaba: