Jump to content

DosSMDoAppReq

From EDM2
Revision as of 18:34, 12 January 2017 by Ak120 (talk | contribs) (Ak120 moved page OS2 API:CPI:LEGACY:DosSMDoAppReq to DosSMDoAppReq)

Description

Perform an application request to start,stop, etc. a child session. This can only be called by the shell that owns the Session Manager.

Syntax

APIRET16 Pascal far DOSSMDOAPPREQ(APPREQ* appreq)

Parameters

appreq
16:16 pointer to an appreq structure:
       struct APPREQ {
           short unknown;
           short length;       /* length of structure */
           short type;         /* request type */
           short rc;           /* return code */
           short sessid;       /* session id */
           short pid;          /* process id */
           short tid;          /* thread id */
           short flgs1;        /* flags 1 */
           long sema1;         /* semaphore 1 ? */
           long sema2;         /* semaphore 2 ? */
           long sema3;         /* semaphore 3 ? */
           short qstatus;      /* internal queueing status */
           short flgs2;        /* flags 2 */
           char param[1];      /* variable length data */
       };
   whereas:
   type
       =0 start
       =1 select
       =2 set
       =3 stop
   flgs1
       bit 0 called from 32 bit code
       bit 1-6 seamless session bits ?
       bit 7 VDM start session
       bit 8 ?
   flgs2
       =0 terminate child
       =1 terminate all children 
   
   param
       variable length field to store different parameters depending on DosStart/Stop/Set/SelectSession 


Return Code

Remarks

Example Code


Related Functions