Structure de SESSION
[Cette structure contient des informations requises uniquement lorsque vous utilisez les fonctions DeleteExtractedFiles et extract , qui ne sont pas prises en charge. Cette documentation est fournie à titre d’information uniquement.]
La structure de la session contient des informations sur la session active.
Syntaxe
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;
Membres
-
répondre
-
l’action à effectuer. Ce membre peut être l’une des valeurs du type énuméré suivant.
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
-
Handle d’une liste de fichiers spécifiée sur la ligne de commande. Ce type de données est déclaré comme suit :
typedef void *HFILELIST; -
fAllCabinets
-
Indicateur qui signale si plusieurs fichiers CAB doivent être traités. Si cette valeur est true, les armoires de continuation sont traitées.
-
fOverwrite
-
Indicateur qui signale si les fichiers existants doivent être remplacés. Si cette valeur est true, les fichiers existants sont remplacés.
-
fNoLineFeed
-
Indicateur qui signale si le dernier
printfappel a les caractères de saut de ligne (\n). Si cette valeur est true, le dernierprintfappel n’a pas inclus les caractères de saut de ligne. -
fSelfExtract
-
Indicateur qui indique si un fichier cab est auto-extractible. Si cette valeur est true, l’armoire est auto-extractible.
-
cbSelfExtractSize
-
La longueur de la partie exécutable (.exe) d’un fichier cab à extraction automatique.
-
cbSelfExtractSize
-
Longueur de la partie du fichier CAB d’un fichier cab à extraction automatique.
-
ahfSelf
-
Descripteurs de fichiers dans le fichier CAB.
#define cMAX_CAB_FILE_OPEN 2 -
cErrors
-
Nombre d’erreurs rencontrées pendant la session d’extraction.
-
hfdi
-
Handle vers le contexte FDI. Ce type de données est déclaré comme suit :
typedef void FAR *HFDI; -
ERF
-
Structure d’erreur FDI. Consultez ERF.
-
cFiles
-
Nombre de fichiers traités.
-
cbTotalBytes
-
Nombre total d’octets extraits.
-
perr
-
L’étape FDI.
-
ateliers
-
Erreur du fichier de débordement. Ce membre peut être l’une des valeurs du type énuméré suivant.
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
-
Taille du fichier de débordement demandé.
-
achSelf
-
Nom du fichier exécutable (.exe).
#define cbFILE_NAME_MAX 256 -
achMsg
-
Mémoire tampon de mise en forme du message.
#define cbMAX_LINE 256 -
achLine
-
Mémoire tampon de mise en forme de ligne.
-
achLocation
-
Répertoire de sortie.
-
achFile
-
Nom de fichier actuel en cours d’extraction.
-
achDest
-
Nom du fichier de destination forcé.
-
achCabPath
-
Chemin d’accès à examiner pour un fichier CAB.
-
fContinuationCabinet
-
Indicateur qui signale si le fichier CAB actuel est le premier traité. Si la valeur est true, le premier fichier CAB n’est pas traité.
-
fShowReserveInfo
-
Indicateur qui spécifie si les informations de réserve doivent être fournies. Si la valeur est true, les informations sont rendues disponibles.
-
fNextCabCalled
-
Ce membre fournit un moyen de déterminer les entrées ACAB à utiliser si nous traitons tous les fichiers d’un jeu de fichiers CAB (fAllCabinet a la valeur true).
-
acab
-
Les deux dernières entrées dans le jeu de fichiers CAB. Cette structure est définie comme suit :
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
-
Préfixe à supprimer du nom de fichier.
#define cbFILE_NAME_MAX 256 -
achCabinetFile
-
Fichier CAB actuel.
#define cbFILE_NAME_MAX 256 -
cArgv
-
Argc à extraction automatique par défaut.
-
pArgv
-
Pointeur vers un pointeur vers le argv à extraction automatique par défaut [ ] .
-
fDestructive
-
Indicateur qui réduit l’espace disque nécessaire lorsque la propriété a la valeur true.
-
iCurrentFolder
-
Si fDestructive a la valeur true, extraire uniquement le dossier actif.