DosSMDoAppReq: Difference between revisions
Appearance
m Ak120 moved page OS2 API:CPI:LEGACY:DosSMDoAppReq to DosSMDoAppReq |
mNo edit summary |
||
Line 1: | Line 1: | ||
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== | ==Parameters== | ||
; appreq : 16:16 pointer to an appreq structure: | ;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 | =0 start | ||
=1 select | =1 select | ||
=2 set | =2 set | ||
=3 stop | =3 stop | ||
flgs1 | |||
bit 0 called from 32 bit code | bit 0 called from 32 bit code | ||
bit 1-6 seamless session bits ? | bit 1-6 seamless session bits ? | ||
bit 7 VDM start session | bit 7 VDM start session | ||
bit 8 ? | bit 8 ? | ||
flgs2 | |||
=0 terminate child | =0 terminate child | ||
=1 terminate all children | =1 terminate all children | ||
param | |||
variable length field to store different parameters depending | |||
variable length field to store different parameters depending on DosStart/Stop/Set/SelectSession | on DosStart/Stop/Set/SelectSession | ||
==Return Code== | ==Return Code== | ||
[[Category:Dos]] | |||
[[Category: |
Revision as of 10:50, 13 February 2017
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