DosSMDoAppReq: Difference between revisions
Appearance
Created page with "image:legacy.png ==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. ..." |
m Ak120 moved page OS2 API:CPI:LEGACY:DosSMDoAppReq to DosSMDoAppReq |
(No difference)
| |
Revision as of 18:34, 12 January 2017
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