Dos16QueryModFromCS: Difference between revisions
Appearance
mNo edit summary |
m →Syntax |
||
| Line 3: | Line 3: | ||
==Syntax== | ==Syntax== | ||
Dos16QueryModFromCS (sel, qmresult) | Dos16QueryModFromCS (sel, qmresult) | ||
==Parameters== | ==Parameters== | ||
;sel ([[SEL]]) input : Selector to be queried. | ;sel ([[SEL]]) input : Selector to be queried. | ||
Revision as of 20:30, 5 November 2017
Dos16QueryModFromCS queries the name, segment, and handle that corresponds to a 16 bit selector. It takes a selector as a parameter and returns information about the module (a protect mode application currently executing) owning that selector.
Syntax
Dos16QueryModFromCS (sel, qmresult)
Parameters
- sel (SEL) input
- Selector to be queried.
- qmresult (QMRESULT) output
- Structure containing the queried information
typedef struct_QMRESULT{USHORT seg; USHORT htme; char name[256];} QMRESULT;
typedef QMRESULT*PQMRESULT;
Return Code
ulrc (APIRET) returns
Dos16QueryModFromCS returns one of the following values
- 0 NO_ERROR
- 87 ERROR_INVALID_PARAMETER
Example Code
#define INCL_DOSMODULEMGR
#include <os2.h>
int main(int argc, char *argv[], char *envp[]){
SEL sel=0;
QMRESULT qmresult;
APIRET16 rc;
if (argc!=2) {
printf("QMODCS sel\n");
return;
} /* endif */
sel=(SEL)strtoul(argv[1],NULL,16);
rc=Dos16QueryModFromCS(sel, qmresult);
if (rc != 0) {
printf("DosQueryModFromCS returned rc=%u\n",rc);
return rc;
} /* endif */
printf("Sel=0x%04x Handle=0x%04x Segment=0x%04x %s\n",
sel,qmresult.hmte,qmresult.seg,qmresult.name);
return 0;
}