127 lines
5.3 KiB
C
127 lines
5.3 KiB
C
|
/*
|
||
|
* 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 *);
|
||
|
|