DosQFileInfo

DosQFileInfo

typedef struct _FDATE {   /* fdate */
 
  unsigned day   : 5;     /* binary day for directory entry */
  unsigned month : 4;     /* binary month for directory entry */
  unsigned year  : 7;     /* binary year for directory entry */
 
} FDATE;

typedef struct _FTIME {       /* ftime */
 
  unsigned twosecs : 5;       /* binary number of two-second increments */
  unsigned minutes : 6;       /* binary number of minutes */
  unsigned hours   : 5;       /* binary number of hours */
 
} FTIME;
typedef struct _FILESTATUS {   /* fsts */
 
  FDATE  fdateCreation;        /* date of file creation */
  FTIME  ftimeCreation;        /* time of file creation */
  FDATE  fdateLastAccess;      /* date of last access */
  FTIME  ftimeLastAccess;      /* time of last access */
  FDATE  fdateLastWrite;       /* date of last write */
  FTIME  ftimeLastWrite;       /* time of last write */
  ULONG  cbFile;               /* file size (end of data) */
  ULONG  cbFileAlloc;          /* file allocated size */
  USHORT attrFile;             /* attributes of the file */
 
} FILESTATUS;
typedef struct _GEA {       /* gea */
 
  BYTE cbName;            /* name length not including NULL */
  CHAR szName[1];         /* attribute name */
 
} GEA;

typedef struct _GEALIST {   /* geal */
 
  ULONG  cbList;          /* total bytes of structure including full list */
  GEA list[1];            /* variable length GEA structures */
 
} GEALIST;

typedef struct _FEA {       /* fea */
 
  BYTE fEA;               /* flags */
  BYTE cbName;            /* name length not including NULL */
  USHORT cbValue;         /* value length */
 
} FEA;

typedef struct _FEALIST {   /* feal */
 
  ULONG  cbList;          /* total bytes of structure including full list */
  FEA list[1];            /* variable length FEA structures */
 
} FEALIST;

typedef struct _EAOP {      /* eaop */
 
  PGEALIST fpGEAList;     /* general EA list */
  PFEALIST fpFEAList;     /* full EA list */
  ULONG  oError;
 
} EAOP;

#define INCL_DOSFILEMGR

USHORT  rc = DosQFileInfo(FileHandle, FileInfoLevel, FileInfoBuf,
                             FileInfoBufSize);

HFILE            FileHandle;      /* File handle */
USHORT           FileInfoLevel;   /* File data required */
PBYTE            FileInfoBuf;     /* File data buffer (returned) */
USHORT           FileInfoBufSize; /* File data buffer size */

USHORT           rc;              /* return code */


[Back: DosQFHandState]
[Next: DosQFileMode]