Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
[Esta estructura contiene información necesaria solo cuando se usan las funciones DeleteExtractedFiles y Extract , que no se admiten. Esta documentación se proporciona únicamente con fines informativos.]
La estructura SESSION contiene información sobre la sesión actual.
Sintaxis
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;
Miembros
-
act
-
la acción que se va a realizar. Este miembro puede ser uno de los valores del siguiente tipo enumerado.
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
-
Identificador de una lista de archivos especificados en la línea de comandos. Este tipo de datos se declara de la siguiente manera:
typedef void *HFILELIST; -
fAllCabinets
-
Marca que indica si se debe procesar más de un archivo de archivador. Si este valor es TRUE, se procesan los gabinetes de continuación.
-
fOverwrite
-
Marca que indica si se deben sobrescribir los archivos existentes. Si este valor es TRUE, se sobrescriben los archivos existentes.
-
fNoLineFeed
-
Marca que indica si la última
printfllamada tiene los caracteres de nueva línea (\n). Si este valor es TRUE, la últimaprintfllamada no incluía los caracteres de nueva línea. -
fSelfExtract
-
Marca que indica si un gabinete es autoextraído. Si este valor es TRUE, el gabinete se extrae automáticamente.
-
cbSelfExtractSize
-
Longitud de la parte ejecutable (.exe) de un gabinete autoextraíble.
-
cbSelfExtractSize
-
Longitud de la parte CAB de un gabinete autoextrayendo.
-
ahfSelf
-
El archivo se encarga del archivador.
#define cMAX_CAB_FILE_OPEN 2 -
cErrors
-
Recuento de errores detectados durante la sesión de extracción.
-
hfdi
-
Un identificador para el contexto de la IED. Este tipo de datos se declara de la siguiente manera:
typedef void FAR *HFDI; -
erf
-
Estructura de error de LAED. Consulte ERF.
-
cFiles
-
Recuento de archivos procesados.
-
cbTotalBytes
-
Número total de bytes extraídos.
-
perr
-
El paso a través de la IED.
-
se
-
Error del archivo de desbordamiento. Este miembro puede ser uno de los valores del siguiente tipo enumerado.
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
-
Tamaño del archivo de desbordamiento solicitado.
-
achSelf
-
Nombre del archivo ejecutable (.exe).
#define cbFILE_NAME_MAX 256 -
achMsg
-
Búfer de formato de mensaje.
#define cbMAX_LINE 256 -
achLine
-
Búfer de formato de línea.
-
achLocation
-
el directorio de salida.
-
achFile
-
Nombre de archivo actual que se va a extraer.
-
achDest
-
Nombre del archivo de destino forzado.
-
achCabPath
-
Ruta de acceso que se va a buscar en un archivo de archivador.
-
fContinuationCabinet
-
Marca que indica si el gabinete actual es el primero procesado. Si se establece en TRUE, no es el primer gabinete procesado.
-
fShowReserveInfo
-
Marca que indica si se debe proporcionar información de reserva. Si se establece en TRUE, la información está disponible.
-
fNextCabCalled
-
Este miembro proporciona una manera de determinar cuál de las entradas de acab que se van a usar si estamos procesando todos los archivos de un conjunto de gabinetes (fAllCabinet se establece en TRUE).
-
acab
-
Las dos últimas entradas del conjunto de gabinetes. Esta estructura se define de la siguiente manera:
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
-
Prefijo que se va a quitar del nombre de archivo.
#define cbFILE_NAME_MAX 256 -
achCabinetFile
-
El archivo de archivador actual.
#define cbFILE_NAME_MAX 256 -
cArgv
-
Argc de extracción automática predeterminada.
-
pArgv
-
Puntero a un puntero al argv autoextraer predeterminado[].
-
fDestructive
-
Marca que minimiza el espacio en disco necesario cuando se establece en TRUE.
-
iCurrentFolder
-
Si fDestructive está establecido en TRUE, extraiga solo la carpeta actual.
Consulte también