Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
[This structure contains information required only when using the DeleteExtractedFiles and Extract functions, which are not supported. This documentation is provided for informational purposes only.]
The SESSION structure contains information about the current session.
Syntax
typedef struct {
  ACTION    act;
  HFILELIST hflist;
  BOOL      fAllCabinets;
  BOOL      fOverwrite;
  BOOL      fNoLineFeed;
  BOOL      fSelfExtract;
  long      cbSelfExtractSize;
  long      cbSelfExtractSize;
  int       ahfSelf[cMAX_CAB_FILE_OPEN];
  int       cErrors;
  HFDI      hfdi;
  ERF       erf;
  long      cFiles;
  long      cbTotalBytes;
  PERROR    perr;
  SPILLERR  se;
  long      cbSpill;
  char      achSelf[cbFILE_NAME_MAX];
  char      achMsg[cbMAX_LINE*2];
  char      achLine;
  char      achLocation;
  char      achFile;
  char      achDest;
  char      achCabPath;
  BOOL      fContinuationCabinet;
  BOOL      fShowReserveInfo;
  BOOL      fNextCabCalled;
  CABINET   acab[2];
  char      achZap[cbFILE_NAME_MAX];
  char      achCabinetFile[cbFILE_NAME_MAX];
  int       cArgv;
  char      **pArgv;
  int       fDestructive;
  USHORT    iCurrentFolder;
} SESSION, *PSESSION;
Members
- 
act
 - 
The action to perform. This member can be one of the values from the following enumerated type.
typedef enum { actBAD, // Invalid action actHELP, // Show help actDEFAULT, // Perform default action based on command line arguments actDIRECTORY, // Force display of cabinet directory actEXTRACT, // Force file extraction actCOPY, // Do single file-to-file copy } ACTION; - 
hflist
 - 
The handle to a list of files specified on the command line. This datatype is declared as follows:
typedef void *HFILELIST; - 
fAllCabinets
 - 
A flag that indicates whether more than one cabinet file should be processed. If this value is TRUE, continuation cabinets are processed.
 - 
fOverwrite
 - 
A flag that indicates whether existing files should be overwritten. If this value is TRUE, existing files are overwritten.
 - 
fNoLineFeed
 - 
A flag that indicates whether the last
printfcall has the newline (\n) characters. If this value is TRUE, the lastprintfcall did not include the newline characters. - 
fSelfExtract
 - 
A flag that indicates whether a cabinet is self extracting. If this value is TRUE, the cabinet is self extracting.
 - 
cbSelfExtractSize
 - 
The length of the executable (.exe) portion of a self-extracting cabinet.
 - 
cbSelfExtractSize
 - 
The length of the CAB portion of a self-extracting cabinet.
 - 
ahfSelf
 - 
The file handles to the cabinet.
#define cMAX_CAB_FILE_OPEN 2 - 
cErrors
 - 
The count of errors encountered during the extraction session.
 - 
hfdi
 - 
A handle to the FDI context. This datatype is declared as follows:
typedef void FAR *HFDI; - 
erf
 - 
The FDI error structure. See ERF.
 - 
cFiles
 - 
The count of files processed.
 - 
cbTotalBytes
 - 
The total number of bytes extracted.
 - 
perr
 - 
The pass through FDI.
 - 
se
 - 
The spill file error. This member can be one of the values from the following enumerated type.
typedef enum { seNONE, // No error seNOT_ENOUGH_MEMORY, // Not enough RAM seCANNOT_CREATE, // Cannot create spill file seNOT_ENOUGH_SPACE, // Not enough space for spill file } SPILLERR; - 
cbSpill
 - 
The size of the spill file requested.
 - 
achSelf
 - 
The name of the executable (.exe) file.
#define cbFILE_NAME_MAX 256 - 
achMsg
 - 
The message formatting buffer.
#define cbMAX_LINE 256 - 
achLine
 - 
The line formatting buffer.
 - 
achLocation
 - 
The output directory.
 - 
achFile
 - 
The current file name being extracted.
 - 
achDest
 - 
The forced destination file name.
 - 
achCabPath
 - 
The path to look at for a cabinet file.
 - 
fContinuationCabinet
 - 
A flag that indicates whether the current cabinet is the first one processed. If set to TRUE, it is not the first cabinet processed.
 - 
fShowReserveInfo
 - 
A flag that indicates whether reserve information should be provided. If set to TRUE, the information is made available.
 - 
fNextCabCalled
 - 
This member provides a way to determine which of the acab entries to use if we are processing all files in a cabinet set (fAllCabinet is set to TRUE).
 - 
acab
 - 
The last two entries in the cabinet set. This structure is defined as follows:
typedef struct { char achCabPath[cbFILE_NAME_MAX]; // Cabinet file path char achCabFilename[cbFILE_NAME_MAX]; // Cabinet file name.ext char achDiskName[cbFILE_NAME_MAX]; // User readable disk label USHORT setID; USHORT iCabinet; } CABINET; typedef CABINET *PCABINET; - 
achZap
 - 
The prefix to strip from the file name.
#define cbFILE_NAME_MAX 256 - 
achCabinetFile
 - 
The current cabinet file.
#define cbFILE_NAME_MAX 256 - 
cArgv
 - 
The default self-extracting argc.
 - 
pArgv
 - 
A pointer to a pointer to the default self-extracting argv[].
 - 
fDestructive
 - 
A flag that minimizes the disk space needed when set to TRUE.
 - 
iCurrentFolder
 - 
If fDestructive is set to TRUE, extract only the current folder.
 
See also