Structure used to represent GroupWise tokens. It contains information identifying the token as well as token parameter data. When allocating memory for a MAC_TOKEN structure, memory for the first parameter is provided. If the token has more than one parameter, additional contiguous memory must be allocated for MAC_PARAM.
typedef struct _tagMAC_TOKEN
{
HSZ hszCommand;
MAC_IPCVERSION Version;
HSZ hszRequestor;
MAC_MACROID dwMacroID;
ATOM atomApp;
WORD wReserved;
MAC_TOKENID wTokenId
MAC_COUNT cParam;
DWORD dwFlags;
DWORD dwReserved;
MAC_PARAM rgParam[1];
} MAC_TOKEN, NEAR *NPMAC_TOKEN, FAR *LPMAC_TOKEN, *PMAC_TOKEN;
The following types are used:
|
MAC_TOKEN |
Structure used to represent actual tokens. |
|
NPMAC_TOKEN |
Near pointer to a MAC_TOKEN structure. |
|
LPMAC_TOKEN |
Far pointer to a MAC_TOKEN structure. |
|
PMAC_TOKEN |
Pointer to a MAC_TOKEN structure. |
The members are defined as follows:
|
hszCommand |
Indicates where the token originated. |
|
Version |
Indicates the IPC version and must be set to 0 (==0). |
|
hszRequestor |
Unique application identifier. |
|
dwMacroID |
Application ID for this macro token. Should always be 0L. |
|
atomApp |
Where the token is bound. |
|
wTokenId |
Token ID |
|
cParam |
Number of token parameters. |
|
dwFlags |
Writeable or non-writeable. |
|
dwReserved |
Reserved. |
|
rgParam |
Parameter data block pointer. rgParam[0] contains the data for the first parameter. Make sure you allocate memory next to the first parameter for added parameters. See MAC_PARAM. |