/* * SPSTUP.H - SwapFile interface for Setup. routines exported from cpwin386.cpl * * BUGBUG: this can go away once we do swapfiles right... */ /* * Structure used with SetupSwapFile API. */ typedef struct { unsigned long StpResBytes; /* The number of bytes that * Setup needs to reserve on the * indicated drive for further * Setup operations. */ unsigned long PartFileSizeBytes; /* The size set (output), or the size * to be set (input) for the paging * SwapFile. */ unsigned int PartFlags; /* Paging file flags, see bit * definitions below. */ unsigned int Win300SpCopied; /* This is a BOOL. It controls the * user warning about the fact that * partition files are inherently * GLOBAL and that if the USER * has both a 3.00 and 3.10 * installation he is going to stomp * the 3.00 installation unless he * behaves. * * NOTE that the display of this * warning is NOT controlled by the * Interact setting. * * NOTE that SetupSwapFile may change * this variable from TRUE -> FALSE * and that Setup should preserve * this change across subsequent * calls. * * Normally this is FALSE. Setup * should set this to TRUE iff SETUP * has copied SPART.PAR from a 3.00 * directory as part of the setup * process. NOTE that this implies * several things: * * SETUP found a 3.00 dir. * * This is a new installation of * 3.10 into a directory DIFFERENT * than the 3.00 directory. * * Setup found an SPART.PAR in the * 3.00 directory to copy. * * An SPART.PAR did not already * exist in the 3.10 directory. */ /* * The following two fields are UPPER-CASE DOS DRIVE LETTERS. */ unsigned char StpResDrv; /* DOS drive of StpResBytes. */ unsigned char PartDrv; /* DOS drive of PartFileSizeBytes. */ LPCSTR szWinDir; /* NEW FOR CHICAGO: windows dir where we are installing too */ } SprtData; /* * Structure used with SetupGetCurSetting API: */ typedef struct { unsigned long PartCurSizeBytes; /* The size of the current SwapFile * (output). */ unsigned int PartFlags; /* Paging file flags (output), see * bit definitions below. */ unsigned char PartDrv; /* DOS drive of CurSizeBytes (output). */ } SprtSetData; /* * Bit definitions for PartFlags bit field: * * For SetupSwapFile() API only * * PART_IS_TEMP * PART_IS_PERM * PART_OFF * PART_NO_SPACE * PART_UCANCEL * * are valid. For SetupGetCurSetting() API only * * PART_IS_TEMP * PART_IS_PERM * PART_OFF * PART_FAST * * are valid. */ #define PART_IS_TEMP 0x0001 /* Setting is temporary swapfile. */ #define PART_IS_PERM 0x0002 /* Setting is permanent swapfile. */ #define PART_OFF 0x0004 /* USER requested paging OFF. */ #define PART_FAST 0x0008 /* Only through SetupGetCurSetting API - * if PART_IS_PERM means USING 32-BIT * ACCESS. */ #define PART_NO_SPACE 0x0010 /* No setting, insufficient disk space. */ #define PART_UCANCEL 0x0020 /* USER CANCELED in interactive mode. */ typedef BOOL (FAR PASCAL *SWAPCURSETPROC)(SprtSetData FAR *SetData); typedef BOOL (FAR PASCAL *SWAPFILEPROC)(HWND, BOOL bInteract, BOOL bCreate, SprtData FAR *);