File Annotation

Not logged in
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: