windows-nt/Source/XPSP1/NT/base/fs/sis/tools/cf/cf.h
2020-09-26 16:20:57 +08:00

60 lines
1.2 KiB
C

#include <stdlib.h> // Has exit()
#include <stdio.h> // Has printf() and related ...
#include <nt.h>
#include <ntrtl.h>
#include <nturtl.h>
#include <ntioapi.h>
#include <windows.h> // Needs to come after the NT header files. Has DWORD
#include <winbase.h>
//
// Private #defines
//
#define SHARE_ALL (FILE_SHARE_READ | FILE_SHARE_WRITE | FILE_SHARE_DELETE)
#define GetFileAttributeError 0xFFFFFFFF
#define ATTRIBUTE_TYPE DWORD // ULONG, really
#define GET_ATTRIBUTES(FileName, Attributes) Attributes = GetFileAttributes(FileName)
#define IF_GET_ATTR_FAILS(FileName, Attributes) GET_ATTRIBUTES(FileName, Attributes); if (Attributes == GetFileAttributeError)
//
// Global flags shared throughout.
//
// ParseArgs is the place where they get set and verified for mutual
// consistency.
//
BOOLEAN fAlternateCreateDefault = FALSE;
BOOLEAN fCopy = FALSE;
BOOLEAN fCreate = FALSE;
BOOLEAN fDelete = FALSE;
BOOLEAN fDisplay = FALSE;
BOOLEAN fModify = FALSE;
BOOLEAN fRename = FALSE;
BOOLEAN fVerbose = FALSE;
BOOLEAN fVVerbose = FALSE;
//
// Signatures of internal routines.
//
void
ParseArgs(
int argc,
char *argv[]
);
void
Usage(
void
);