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]