DosGetInfoSeg
DosGetInfoSeg
typedef struct _GINFOSEG {
ULONG time; /* time in seconds */
ULONG msecs; /* milliseconds */
UCHAR hour; /* hours */
UCHAR minutes; /* minutes */
UCHAR seconds; /* seconds */
UCHAR hundredths; /* hundredths */
USHORT timezone; /* minutes from UTC */
USHORT cusecTimerInterval; /* timer interval (units = 0.0001 seconds) */
UCHAR day; /* day */
UCHAR month; /* month */
USHORT year; /* year */
UCHAR weekday; /* day of week */
UCHAR uchMajorVersion; /* major version number */
UCHAR uchMinorVersion; /* minor version number */
UCHAR chRevisionLetter; /* revision letter */
UCHAR sgCurrent; /* current foreground session */
UCHAR sgMax; /* maximum number of sessions */
UCHAR cHugeShift; /* shift count for huge elements */
UCHAR fProtectModeOnly; /* protect mode only indicator */
USHORT pidForeground; /* pid of last process in foreground
session */
UCHAR fDynamicSched; /* dynamic variation flag */
UCHAR csecMaxWait; /* max wait in seconds */
USHORT cmsecMinSlice; /* minimum timeslice (milliseconds) */
USHORT cmsecMaxSlice; /* maximum timeslice (milliseconds) */
USHORT bootdrive; /* drive from which the system was booted */
UCHAR amecRAS[32]; /* system trace major code
flag bits */
UCHAR csgWindowableVioMax;/* maximum number of VIO windowable
sessions */
UCHAR csgPMMax; /* maximum number of pres. services
sessions */
} GINFOSEG;
typedef struct _LINFOSEG {
PID pidCurrent; /* current process id */
PID pidParent; /* process id of parent */
USHORT prtyCurrent; /* priority of current thread */
TID tidCurrent; /* thread ID of current thread */
USHORT sgCurrent; /* session */
UCHAR rfProcStatus; /* process status */
UCHAR dummy1;
BOOL fForeground; /* current process has keyboard focus */
UCHAR typeProcess; /* process type */
UCHAR dummy2;
SEL selEnvironment; /* environment selector */
USHORT offCmdLine; /* command line offset */
USHORT cbDataSegment; /* length of data segment */
USHORT cbStack; /* stack size */
USHORT cbHeap; /* heap size */
HMODULE hmod; /* module handle of the application */
SEL selDS; /* data segment handle of the application */
} LINFOSEG;
#define INCL_DOSINFOSEG
USHORT rc = DosGetInfoSeg(GlobalSeg, LocalSeg);
PSEL GlobalSeg; /* Address to place global segment
(selector) */
PSEL LocalSeg; /* Address to place local segment
(selector) */
USHORT rc; /* return code */
[Back: DosGetHugeShift]
[Next: DosGetMachineMode]