📄 gwdll.h
字号:
////////////////////////////////////////////////////////////////////////////////
// File GWDLL.H
// Title GroupWise 5 Tokens
// Owner SDK
// Tabs 4
// Version 5.5 EP SP1
//
// Copyright (C) 1995-2000 Novell, Inc., All Rights Reserved
//
// Description:
//
// GroupWise 5 Token Structures, enumerations, token IDs, and Menu IDs
// Mxpsx.h
// Oftkn.rh
// Ofmenu.rh
//
// Token value determination has changed to be explicitly defined.
// For Example:
// Old SDK header: #define AFTKN_USERID (BASE_AFUNC_TOKEN + 193) // AFTKN_USERID
// This SDK header: #define AFTKN_USERID 764 // (BASE_AFUNC_TOKEN + 210) // AFTKN_USERID
//
// This file includes:
// 1. Token structures, and enumerations
// 2. Token IDs
// 3. Menu IDs
//
// Obsolete tokens have been removed.
//
//Revision history:
//
// Rev 5.5.2 5 JUN 2000
// - Revised/Updated
//
//////////////////////////////////////////////////////////////////////////////////
#include "windows.h"
////////////////////////////////////////////////////////////////////////////////
// Token structures, and enumerations
////////////////////////////////////////////////////////////////////////////////
#define MAC_NAME_WZCOUNT 50 // Maximum size for a name.
#define MAC_NO_ERROR 0
#define MAC_BASE_GENERAL_ERRORS (-99)
#define MAC_TOP_APP_ERROR (MAC_BASE_GENERAL_ERRORS-1)
typedef double VALUE_FLOAT;
typedef VALUE_FLOAT *PVALUE_FLOAT;
typedef VALUE_FLOAT NEAR *NPVALUE_FLOAT;
typedef VALUE_FLOAT FAR *LPVALUE_FLOAT;
typedef long VALUE_INT;
typedef VALUE_INT *PVALUE_INT;
typedef VALUE_INT NEAR *NPVALUE_INT;
typedef VALUE_INT FAR *LPVALUE_INT;
// General typedefs
typedef WORD MAC_FUNCTIONID;
typedef DWORD MAC_COUNT;
typedef DWORD MAC_MACROID;
typedef DWORD MAC_IPCVERSION;
typedef MAC_FUNCTIONID MAC_TOKENID;
////////////////////////////////////////////////////////////////////////////////
// Token structures, and enumerations
// Begin GroupWise 5 SDK Specific
////////////////////////////////////////////////////////////////////////////////
typedef unsigned short WZ;
typedef char AZ;
typedef WZ MAC_SYMBOLNAME[MAC_NAME_WZCOUNT + 1];
typedef double VALUE_FLOAT;
typedef long VALUE_INT;
typedef enum _dllHandlerType {
DLL_HAN_NOT_HANDLED,
DLL_HAN_NO_ERROR,
DLL_HAN_NOT_FOUND,
DLL_HAN_CANCEL,
DLL_HAN_TOKEN_ERROR,
DLL_HAN_PARM_ERROR
} DLLHandlerType;
typedef enum _dllValidationType {
DLL_VAL_UNKNOWN_TOKEN,
DLL_VAL_VALIDATED,
DLL_VAL_UNVALIDATED,
DLL_VAL_UNKNOWN_TASK
} DLLValidationType;
#define WPLM_EXECUTE_TOKEN (WM_USER + 11) // Message from 3rd party DLL to
// cause the app to execute a token.
#define WPLM_ALLOC_MEM (WM_USER + 25) // Sent when a third party app
// needs to allocate memory
// wParam - 0, not used
// lParam - Size of buffer to alloc
// Return lpMem if successful
// NULL if unsuccessful.
#define WPLM_FREE_MEM (WM_USER + 26) // Sent when a third party app
// frees memory obtained using
// WPLM_ALLOC_MEM
// wParam - 0, not used
// lParam - lpMem to free
// Return NULL if successful,
// lpMem if unsuccessful
////////////////////////////////////////////////////////////////////////////////
// End of GroupWise 5 SDK Specific
////////////////////////////////////////////////////////////////////////////////
// ranges for the MAC_VALUE_TYPE enumeration.
#define VALUE_GENERAL_TYPES 0x0000 // base range for general types
#define VALUE_PARAMETER_TYPES 0x0040 // base range for types used only on parameters.
#define VALUE_VARIABLE_TYPES 0x0080 // base range for types used only on parameters.
#define VALUE_END_OF_TYPES 0x00C0 // end of type ranges.
typedef enum
{
eValUndefined = VALUE_GENERAL_TYPES, // undefined type
//parameter types only
eParmAny = VALUE_PARAMETER_TYPES,// type decided at run-time
eParmBoolean, // 'C' BOOL type
eParmByteSigned, // signed 8-bit value
eParmByteUnsigned, // unsigned 8-bit value
eParmCentimeters, // double
eParmDwordSigned, // signed 32-bit value
eParmDwordUnsigned, // unsigned 32-bit value
eParmDWPUSigned, // signed 32-bit unit (WPU)
eParmDWPUUnsigned, // unsigned 32-bit unit (WPU)
eParmEnumeration, // enumeration 16-bit value
eParmFloat, // double
eParmInches, // double
eParmMillimeters, // double
eParmPoints, // double
eParmStringAnsi, // ANSI string (zero terminated)
eParmStringLabel, // WPCORP Word STring (zero terminated)
//// containing a label reference.
eParmStringOem, // OEM string (zero terminated)
eParmStringWord, // WPCORP Word String (zero terminated)
eParmStringVariable, // word string containing a variable name
eParmTokenID, // unsigned 16-bit value
eParmWordSigned, // signed 16-bit value
eParmWordUnsigned, // unsigned 16-bit value
eParmWPFname, // ANSI string (zero terminated)
// containing a file name.
eParmWPUSigned, // signed 16-bit unit (WPU)
eParmWPUUnsigned, // unsigned 16-bit unit (WPU)
eParmUserDialog, // user dialog buffer (like a string)
eParmStringWide, // Wide/Unicode (zero terminated)
// variable types only
eValArrayDefinition = VALUE_VARIABLE_TYPES, // definition of an Array
eValBoolean, // 'C' BOOL type
eValCentimeters, // double
eValFloat, // double
eValInches, // double
eValInteger, // signed 32-bit value
eValMillimeters, // double
eValOLEObject, // ???
eValPoints, // double
eValString, // WPCORP Word String (zero terminated)
eValStringAnsi, // ANSI string (zero terminated)
eValStringOem, // OEM string (zero terminated)
eValWPUnits, // signed 32-bit unit (WPU)
eValAlias, // used for reference parameters
eValRecord, // definition of a record
eValDateTime, // unsigned 32-bit value
eValRawBinary, // raw binary data type
eValStringWide, // Wide/Unicode (zero terminated)
eValZzzzzNoMore = VALUE_END_OF_TYPES // there is nothing after this.
} MAC_VALUE_TYPE;
// Macro IPC Parameter packet.
typedef struct _tagMAC_PARAM
{
MAC_VALUE_TYPE eType;
WORD wFlags;
WORD wReserved; // Reserved, must be NULL.
union
{
DWORD dwValue;
void far *lpvPtr;
double drValue;
} uData;
} MAC_PARAM, NEAR *NPMAC_PARAM, FAR *LPMAC_PARAM, *PMAC_PARAM;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -