⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gwdll.h

📁 PGP8.0源码 请认真阅读您的文件包然后写出其具体功能
💻 H
📖 第 1 页 / 共 5 页
字号:
////////////////////////////////////////////////////////////////////////////////
// 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 + -