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

📄 reg.h

📁 IBM Lotus C++ API 7.0a for IBM Lotus Notes/Domino Directory Release --------- ------------------
💻 H
📖 第 1 页 / 共 2 页
字号:

#if defined(OS400) && (__OS400_TGTVRM__ >= 510)
#pragma datamodel(P128)
#endif

/*********************************************************************/
/*                                                                   */
/* Licensed Materials - Property of IBM                              */
/*                                                                   */
/* L-GHUS-5VMPGW, L-GHUS-5S3PEE                                      */
/* (C) Copyright IBM Corp. 1993, 2005  All Rights Reserved           */
/*                                                                   */
/* US Government Users Restricted Rights - Use, duplication or       */
/* disclosure restricted by GSA ADP Schedule Contract with           */
/* IBM Corp.                                                         */
/*                                                                   */
/*********************************************************************/


#ifdef __cplusplus
extern "C" {
#endif

#ifndef	USERREG_DEFS
#define	USERREG_DEFS

#ifndef NAME_DEFS
#include "names.h"
#endif

#ifndef KFM_DEFS
#include "kfm.h"
#endif

#ifndef OSFILE_DEFS
#include "osfile.h"
#endif

#ifndef NSF_DATA_DEFS
#include "nsfdata.h"			/* for DBHANDLE */
#endif


/* 	Definitions ---------------------------------------------------------- */
/* The following InfoType codes are defined for REGGetIDInfo */
/* Note that the Certifier Flag can only exist on a hierarchical ID */
/* and that Certifier, NotesExpress, and Desktop flags are not */
/* present in safe copies of ID files */

#define REGIDGetUSAFlag				1
/* Data structure returned is BOOL */

#define REGIDGetHierarchicalFlag	2
/* Data structure returned is BOOL */

#define REGIDGetSafeFlag			3
/* Data structure returned is BOOL */

#define REGIDGetCertifierFlag		4
/* Data structure returned is BOOL */

#define REGIDGetNotesExpressFlag	5
/* Data structure returned is BOOL */

#define REGIDGetDesktopFlag			6
/* Data structure returned is BOOL */

#define REGIDGetName				7
/* Data structure returned is char xx[MAXUSERNAME] */

#define REGIDGetPublicKey			8
/* Data structure returned is char xx[xx] */

#define REGIDGetPrivateKey			9
/* Data structure returned is char xx[xx] */

#define REGIDGetIntlPublicKey		10
/* Data structure returned is char xx[xx] */

#define REGIDGetIntlPrivateKey		11
/* Data structure returned is char xx[xx] */


typedef void (LNCALLBACKPTR REGSIGNALPROC)(char far *);
typedef WORD REGFlags;
typedef DWORD REGFlagsExt;

/* The following bits are defined in REGFlags
*
*  NOTE: fREGCreateMailFileUsingAdminp and fREGCreateMailFileNow are mutually exclusive.
*  If both flags are specified, then fREGCreateMailFileNow is the action
*  that will be performed.
*/
#define fREGCreateIDFileNow				0x0001
#define fREGUSARequested				0x0002
#define fREGCreateMailFileNow			0x0004
#define fREGCreateAddrBookEntry			0x0008
#define fREGOkayToModifyID				0x0010
#define fREGOkayToModifyAddrbook		0x0020
#define fREGSaveIDInFile				0x0040
#define fREGCreateLimitedClient			0x0080
#define fREGCreateDesktopClient			0x0100
#define fREGSaveIDInAddrBook			0x0200
#define fREGCreateMailFileUsingAdminp	0x0800	/* use admin process to create mail file */
#define fREGSetInternetPassword			0x1000	/* user only */
#define fREGSetDB2Access				0x1000	/* Server only */

#define fREGExtCreateMailFTIndex		0x00000001
#define fREGExtReturnPersonNote			0x00000002
#define fREGExtEnforceUniqueShortName	0x00000004
#define fREGExtRoamingUserNow			0x00000200
#define fREGExtRoamingFilesUsingAdminp	0x00000400
#define fREGExtCreateINetKeyPair		0x00001000
#define fREGExtMailReplicasUsingAdminp	0x00008000
#define fREGExtRoamingReplicasUsingAdminp	0x00040000
#define fREGExtRegUsingPolicy				0x00100000

/*  Use the structure below with REGNewPerson, REGNewCertifierExtended, REGNewServerExtended2 entire structure must
be initialized to zero */ 
typedef struct
	{
	DWORD	Size;				/* size of this structure - must initialize with sizeof (REG_ID_INFO) */
	WORD	Type;				/* see KFM_IDFILE_??? */
	WORD	KeyWidth;			/*	size of the key in bits:
									0 - default
									630 - Compatible with all releases
									1024 - Compatible with N/D6 and later
								*/
	WORD	PasswordKeyWidth;	/*	sizeo fht key in bits: 
									0 - default (means 64 bits for KeyWidth < 1024 else 128 bits)
									64 - 64 bits
									128 - 128 bits 
								*/
	char	*FileName;
	DWORD	Reserved[4];
	void	*pReserved[4];
	} REG_ID_INFO;

/*  Use the structure below with REGNewPerson, REGNewCertifierExtended, REGNewServerExtended2 entire structure must 
be initialized to zero */
typedef struct
	{
	DWORD		Size;			/* size of this structure - must initialize with sizeof (REG_MISC_INFO) */
	char		*Location;
	char		*Comment;
	char		*LocalAdminName;
	DWORD		Reserved[4];
	void		*pReserved[4];
	} REG_MISC_INFO;

/*  Use the structure below with REGNewServerExtended2 entire structure must be initialized to zero */
typedef struct
	{
	DWORD	Size;		/* size of this structure - must initialize with sizeof (REG_SERVER_INFO) */

	/* server name information */
	char	*Name;
	char	*OrgUnit;
	char	*Title;
	char	*DomainName;
	char	*NetworkName;
	char	*AdminName;

	/* server password information */
	char			*Password;
	WORD			PasswordQuality;

	/* control flags */
	REGFlags		Flags;

	/* server internet information */
	char	*HostName;
	HCERTIFIER hInternetCertCtx;
	char	*KeyringFileName;
	char	*KeyringPassword;

	/* ID file information */
	REG_ID_INFO		*IDInfo;

	/* generic information */
	REG_MISC_INFO	*MiscInfo;

	DWORD	Reserved[4];
	void	*pReserved[4];
	} REG_SERVER_INFO;

/*  Use the structure below with REGNewCertifierExtended entire structure must be initialized to zero */
typedef struct
	{
	DWORD			Size;			/* size of this structure - must initialize with sizeof (REG_CERTIFIER_INFO) */

	/* certifier name information */
	char 			*Country;
	char 			*Org;
	char 			*OrgUnit;

	/* certifier password information */
	char			*Password;
	WORD			PasswordQuality;

	/* certifier mail information */
	char 			*MailServerName;
	char 			*MailFileName;
	char 			*ForwardAddress;

	/* control flags */
	REGFlags		Flags;

	/* ID file information */
	REG_ID_INFO		*IDInfo;

	/* generic information */
	REG_MISC_INFO	*MiscInfo;
	
	DWORD	Reserved[4];
	void	*pReserved[4];
	} REG_CERTIFIER_INFO;

/*	REG_FILE_DUP_XXX defines used with
	OnDuplicate element of REG_ROAMING_INFO struct and REG_MAIL_INFO_EXT struct*/
#define REG_FILE_DUP_STOP				0
#define REG_FILE_DUP_UNIQUE				1
#define REG_FILE_DUP_OVERWRITE			2

/* Use the structure below with REGNewPerson entire structure must be initialized to zero */
typedef struct
	{
	DWORD	Size;			/* size of this structure - must initialize with sizeof (REG_MAIL_INFO_EXT) */
	WORD 	MailSystem;
	WORD 	MailOwnerAccess;
	DWORD	DbQuotaSizeLimit;
	DWORD	DbQuotaWarningThreshold;
	char 	*pMailServerName;
	char 	*pMailFileName;
	char 	*pMailTemplateName;
	char 	*pMailForwardAddress;
	char 	*pMailACLManager;
	HANDLE	hReplicaServers;
	WORD	OnDuplicate;		/* one of REG_FILE_DUP_XXX */

	DWORD	Reserved[4];
	void	*pReserved[4];
	} REG_MAIL_INFO_EXT;


/* Use the structure below with REGNewPerson entire structure must be initialized to zero */
typedef struct
	{
	DWORD	Size;				/* size of this structure - must initialize with sizeof (REG_ROAMING_INFO) */
	char	*ServerName;		/*	server destination for three roaming files */
	char	*SubDirectory;		/*	path (relative) to data dir on which roaming files will be created */
	WORD	CleanupSetting;		/*	REG_ROAMING_CLEANUP_NEVER is don't cleanup
								  	REG_ROAMING_CLEANUP_EVERY_NDAYS is cleanup every ndays
								  	REG_ROAMING_CLEANUP_AT_SHUTDOWN is cleanup at shutdown
									REG_ROAMING_CLEANUP_PROMPT is prompt for cleanup*/
	WORD	CleanupPeriod;		/*	for REG_ROAMING_CLEANUP_EVERY_NDAYS - days, values 1 through 365 allowed */
	HANDLE	hReplicaServers;	/* text list of replica servers */
	WORD	OnDuplicate;		/* one of REG_FILE_DUP_XXX */

	DWORD	Reserved[4];
	void	*pReserved[4];
	} REG_ROAMING_INFO;


/*	REG_ROAMING_CLEANUP_XXX defines used with
	CleanupSetting element of REG_ROAMING_INFO struct */
#define REG_ROAMING_CLEANUP_NEVER		0
#define REG_ROAMING_CLEANUP_EVERY_NDAYS	1
#define REG_ROAMING_CLEANUP_AT_SHUTDOWN	2
#define REG_ROAMING_CLEANUP_PROMPT		3

/*  Use the structure below with REGNewPerson entire structure must be initialized to zero */
typedef struct reg_person_info
	{
	DWORD		Size;			/* size of this structure - must initialize with sizeof (REG_PERSON_INFO) */

	/* person name information */
	char 		*LastName;
	char 		*FirstName;
	char 		*MiddleName;
	char 		*OrgUnit;
	char 		*ShortName;
	char 		*AlternateName;
	char		*AltOrgUnit;
	char		*InternetAddress;

	/* person password information */
	char		*Password;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -