📄 nsfdb.h
字号:
/* Total server!!file length is */
/* ServerNameLength + FileNameLength + 2 */
/* to compensate for the !! separator */
WORD MoreInfo; /* contains MoreInfo from cache - includes complete replication flag */
WORD wSpare; /* Room for growth */
DWORD dwSpare; /* Room for growth */
/* Server/file name pairs follow as */
/* "<server name>!!<file name>" with */
/* NULL after each pairing */
} REPLHIST_SUMMARY;
/* Types for REPLHISTORY.Direction */
#define DIRECTION_NEVER 0
#define DIRECTION_SEND 1
#define DIRECTION_RECEIVE 2
/* Macros for accessing packed data following the REPLHISTORY_SUMMARY array.
NOTE: The server name pointer is NOT null-terminated, but the file name
pointer is. This is so the caller can use the "server file" string
directly.
*/
#define NSFGetSummaryServerNamePtr(Summary, Index) \
(((char FAR *) Summary) + Summary[Index].ServerNameOffset)
#define NSFGetSummaryFileNamePtr(Summary, Index) \
(((char FAR *) Summary) + Summary[Index].ServerNameOffset + \
Summary[Index].ServerNameLength + 2)
/* Option flags for NSFDbGetReplHistorySummary */
#define REPLHIST_REMOVE_WILDCARDS 0x00000001L /* Don't copy wild card entries */
#define REPLHIST_SORT_BY_DATE 0x00000002L /* Sort by date. Default is
by server name */
#define REPLHIST_ONLY_COMPLETE 0x00000004L /* Only return complete entries */
/* Structure returned from NSFDbGetMajMinVersion
NOTE: For release 5.0.4a, the values would be:
MajorVersion = 5
MinorVersion = 0
QMRNumber = 4
QMUNumber = 1
*/
typedef struct {
DWORD MajorVersion; /* Major version identifier */
DWORD MinorVersion; /* Minor version identifier */
DWORD QMRNumber; /* Maintenance Release identifier */
DWORD QMUNumber; /* Maintenance Update identifier */
DWORD HotfixNumber; /* Hotfixes installed on machine */
DWORD Flags; /* See BUILDVERFLAGS_xxx */
DWORD FixpackNumber; /* Fixpack version installed on machine */
DWORD Spare[2]; /* Room for growth */
} BUILDVERSION;
/* Flags returned in the 'Flags' section of the BUILDVERSION structure */
#define BLDVERFLAGS_NONPRODUCTION 0x00000001L /* Non-production style build (internal only). */
/* Option flags for NSFDbCreateExtended */
#define DBCREATE_LOCALSECURITY 0x0001
#define DBCREATE_OBJSTORE_NEVER 0x0002
#define DBCREATE_MAX_SPECIFIED 0x0004
#define DBCREATE_NORESPONSE_INFO 0x0010 /* Don't support note hierarchy - ODS21 and up only */
#define DBCREATE_NOUNREAD 0x0020 /* Don't maintain unread lists for this DB */
#define DBCREATE_NO_FREE_OVERWRITE 0x0200 /* Skip overwriting freed disk buffer space */
#define DBCREATE_FORM_BUCKET_OPT 0x0400 /* Maintain form/bucket bitmap */
#define DBCREATE_DISABLE_TXN_LOGGING 0x0800 /* Disable transaction logging for this database if specified */
#define DBCREATE_MAINTAIN_LAST_ACCESSED 0x1000 /* Enable maintaining last accessed time */
#define DBCREATE_IS_MAILBOX 0x4000 /* TRUE if database is a mail[n].box database */
#define DBCREATE_LARGE_UNKTABLE 0x8000 /* TRUE if database should allow "large" (>64K bytes) UNK table */
/* Values for EncryptStrength of NSFDbCreateExtended */
#define DBCREATE_ENCRYPT_NONE 0x00
#define DBCREATE_ENCRYPT_SIMPLE 0x01
#define DBCREATE_ENCRYPT_MEDIUM 0x02
#define DBCREATE_ENCRYPT_STRONG 0x03
/* NSFDbCreateExtendedWithOptions Option2 flags */
/* NOTE: When you define a new Option2 flag, OR that flag into the
DBCREATE_UNDEFINED_OPTIONS2 definition below */
#define DBCREATE_USE_SERVER_DEFAULT_DATASTORE 0x00000000
#define DBCREATE_FORCE_NSF_DATASTORE 0x00000001
#define DBCREATE_FORCE_DB2_DATASTORE 0x00000002
#define DBCREATE_UNDEFINED_OPTIONS2 ~(DBCREATE_USE_SERVER_DEFAULT_DATASTORE | \
DBCREATE_FORCE_NSF_DATASTORE | \
DBCREATE_FORCE_DB2_DATASTORE | \
DBCREATE_OVERRIDE_ADMINP)
STATUS LNPUBLIC NSFDbGetReplHistorySummary (DBHANDLE hDb, DWORD Flags,
HANDLE *rethSummary, DWORD * retNumEntries);
STATUS LNPUBLIC NSFDbGetMajMinVersion (DBHANDLE hDb, BUILDVERSION far *retVersion);
#if !defined(DB2GetInfo)
STATUS LNPUBLIC NSFDB2GetInfo( DBHANDLE hDB, DWORD infotype, void far *buffer, DWORD *size );
#endif
/* \client\cldbinfo.c */
#if !defined(DB2GetServerInfo)
STATUS LNPUBLIC NSFDB2GetServerInfo( char *szServerName, DWORD infotype, void far *buffer, DWORD *size );
#endif
STATUS LNPUBLIC NSFDbIsDB2 (DBHANDLE hDB, BOOL *isDB2);
/* Option flags for NSFDbCreateAndCopy */
#define DBCOPY_REPLICA 0x00000001L
#define DBCOPY_SUBCLASS_TEMPLATE 0x00000002L
#define DBCOPY_DBINFO2 0x00000004L
#define DBCOPY_SPECIAL_OBJECTS 0x00000008L
#define DBCOPY_NO_ACL 0x00000010L
#define DBCOPY_NO_FULLTEXT 0x00000020L
#define DBCOPY_ENCRYPT_SIMPLE 0x00000040L
#define DBCOPY_ENCRYPT_MEDIUM 0x00000080L
#define DBCOPY_ENCRYPT_STRONG 0x00000100L
#define DBCOPY_KEEP_NOTE_MODTIME 0x00000200L
#define DBCOPY_REPLICA_NAMELIST 0x01000000L /* Copy the NameList (applicable only when DBCOPY_REPLICA is specified) */
#define DBCOPY_DEST_IS_NSF 0x02000000L /* Destination is NSF-backed database */
#define DBCOPY_DEST_IS_DB2 0x04000000L /* Destination is DB2-backed database */
#define DBCOPY_OVERRIDE_DEST 0x08000000L /* Destination should override default if able to */
STATUS LNPUBLIC NSFDbCopyExtended (DBHANDLE hSrcDB, DBHANDLE hDstDB,
TIMEDATE Since, WORD NoteClassMask, DWORD Flags,
TIMEDATE far *retUntil);
STATUS LNPUBLIC NSFDbOpen (const char far *PathName, DBHANDLE far *rethDB);
STATUS LNPUBLIC NSFDbOpenTemplate (const char far *PathName, DBHANDLE far *rethDB);
STATUS LNPUBLIC NSFDbOpenExtended (const char far *PathName, WORD Options,
HANDLE hNames,
TIMEDATE far *ModifiedTime,
DBHANDLE far *rethDB,
TIMEDATE far *retDataModified,
TIMEDATE far *retNonDataModified);
STATUS LNPUBLIC NSFDbOpenTemplateExtended (const char far *PathName, WORD Options,
HANDLE hNames,
TIMEDATE far *ModifiedTime,
DBHANDLE far *rethDB,
TIMEDATE far *retDataModified,
TIMEDATE far *retNonDataModified);
STATUS LNPUBLIC NSFDbClose (DBHANDLE hDB);
STATUS LNPUBLIC NSFDbCreate (const char far *PathName, USHORT DbClass, BOOL ForceCreation);
STATUS LNPUBLIC NSFDbCreateObjectStore (const char far *PathName, BOOL ForceCreation);
STATUS LNPUBLIC NSFDbDelete (const char far *PathName);
STATUS LNPUBLIC NSFDbCreateExtended (const char far *PathName, WORD DbClass,
BOOL ForceCreation, WORD Options,
BYTE EncryptStrength, DWORD MaxFileSize);
STATUS LNPUBLIC NSFDbCreateExtendedWithOptions(const char far *filename, WORD dbclass, BOOL force,
WORD Option, DWORD Option2, BYTE EncryptStrength, DWORD MaxFileSize,
const char far *String1, const char far *String2,
WORD ReservedListLength, WORD ReservedListCount, HANDLE hReservedList);
STATUS LNPUBLIC NSFDbCreateWithUserNameList(const char far *PathName, WORD DbClass,
BOOL ForceCreation, WORD Options,
BYTE EncryptStrength, DWORD MaxFileSize, HANDLE hNamesList);
STATUS LNPUBLIC NSFDbDeleteExtended (const char far *PathName, HANDLE hNameList);
STATUS LNPUBLIC NSFDbCopy (DBHANDLE hSrcDB, DBHANDLE hDstDB, TIMEDATE Since, WORD NoteClassMask);
STATUS LNPUBLIC NSFDbCopyNote (DBHANDLE hSrcDB, DBID far *SrcDbID, DBID far *SrcReplicaID,
NOTEID SrcNoteID,
DBHANDLE hDstDB, DBID far *DstDbID, DBID far *DstReplicaID,
NOTEID far *retDstNoteID, WORD far *retNoteClass);
STATUS LNPUBLIC NSFDbCreateAndCopyExtended(const char far* srcDb,const char far* dstDb, WORD NoteClass, WORD limit,
DWORD flags, HANDLE hNames, DBHANDLE far* retHandle);
STATUS LNPUBLIC NSFDbCreateAndCopy(const char far* srcDb,const char far* dstDb, WORD NoteClass, WORD limit, DWORD flags, DBHANDLE far* retHandle);
STATUS LNPUBLIC NSFDbMarkInServiceExtended(const char far* dbPathPtr, HANDLE hNames);
STATUS LNPUBLIC NSFDbMarkForDelete(const char far* dbPathPtr);
STATUS LNPUBLIC NSFDbMarkInService(const char far* dbPathPtr);
STATUS LNPUBLIC NSFDbMarkOutOfService(const char far* dbPathPtr);
STATUS LNPUBLIC NSFDbCopyNoteExt(DBHANDLE hSrcDB,DBID *SrcDbID,DBID *SrcReplicaID,NOTEID SrcNoteID,
DBHANDLE hDstDB,DBID *DstDbID,DBID *DstReplicaID,
DWORD dwOpenFlags, DWORD dwUpdateFlags,
NOTEID *retDstNoteID,WORD *retNoteClass);
STATUS LNPUBLIC NSFDbCopyACL (DBHANDLE hSrcDB, DBHANDLE hDstDB);
STATUS LNPUBLIC NSFDbCopyTemplateACL (DBHANDLE hSrcDB, DBHANDLE hDstDB, char far *Manager, WORD DefaultAccessLevel);
STATUS LNPUBLIC NSFDbCreateACLFromTemplate (DBHANDLE hNTF, DBHANDLE hNSF,
const char far *Manager, WORD DefaultAccess,
HANDLE far *rethACL);
STATUS LNPUBLIC NSFDbStoreACL (DBHANDLE hDB, HANDLE hACL, DWORD ObjectID, WORD Method);
STATUS LNPUBLIC NSFDbReadACL(DBHANDLE hDB, HANDLE far *rethACL);
STATUS LNPUBLIC NSFDbGenerateOID (DBHANDLE hDB, OID far *retOID);
STATUS LNPUBLIC NSFSetMaxPasswordAccess(DBHANDLE hDB, WORD Level);
STATUS LNPUBLIC NSFGetMaxPasswordAccess(DBHANDLE hDB, WORD *retLevel);
STATUS LNPUBLIC NSFDbModifiedTime (DBHANDLE hDB, TIMEDATE far *retDataModified, TIMEDATE far *retNonDataModified);
STATUS LNPUBLIC NSFDbPathGet (DBHANDLE hDB, char far *retCanonicalPathName, char far *retExpandedPathName);
STATUS LNPUBLIC NSFDbInfoGet (DBHANDLE hDB, char far *retBuffer);
STATUS LNPUBLIC NSFDbInfoSet (DBHANDLE hDB, char far *Buffer);
void LNPUBLIC NSFDbInfoParse(char far *Info, WORD What, char far *Buffer, WORD Length);
void LNPUBLIC NSFDbInfoModify(char far *Info, WORD What, const char far *Buffer);
STATUS LNPUBLIC NSFDbGetSpecialNoteID (DBHANDLE hDB, WORD Index, NOTEID far *retNoteID);
STATUS LNPUBLIC NSFDbIDGet (DBHANDLE hDB, DBID far *retDbID);
STATUS LNPUBLIC NSFDbReplicaInfoGet (DBHANDLE hDB, DBREPLICAINFO far *retReplicationInfo);
STATUS LNPUBLIC NSFDbReplicaInfoSet (DBHANDLE hDB, DBREPLICAINFO far *ReplicationInfo);
STATUS LNPUBLIC NSFDbReplicaInfoSetExtended (DBHANDLE hDB, DBREPLICAINFO far *ReplicationInfo, HANDLE hNamesList);
STATUS LNPUBLIC NSFDbGetNoteInfo (DBHANDLE hDB, NOTEID NoteID,
OID far *retNoteOID,
TIMEDATE far *retModified,
WORD far *retNoteClass);
STATUS LNPUBLIC NSFDbHasProfileNoteChanged(DBHANDLE hDB, NOTEID noteid, DWORD *pSeqNum, TIMEDATE *Since, BOOL *HasChanged, TIMEDATE *retModTime);
#define DBQUOTA_NOT_SPECIFIED (-1)
STATUS LNPUBLIC NSFDbQuotaGet (const char far *Filename, DBQUOTAINFO far *retQuotaInfo);
STATUS LNPUBLIC NSFDbQuotaSetExt(const char far *Filename, DWORD Flags, DBQUOTAINFO far *QuotaInfo);
STATUS LNPUBLIC NSFDbQuotaGethDB(DBHANDLE hDB, DBQUOTAINFOEXT *QuotaInfo) ;
/* Options for quota detection,enforcement method */
#define NSF_QUOTA_METHOD_DEFAULT 0L
#define NSF_QUOTA_METHOD_USAGE 1L
#define NSF_QUOTA_METHOD_FILESIZE 2L
#define NSF_QUOTA_METHOD_FILESIZE_ADD 3L
STATUS LNPUBLIC NSFDbFTSizeGet(const char far *Filename, DWORD *FTSize);
STATUS LNPUBLIC NSFDbGetNoteInfoByUNID(DBHANDLE hDB, UNID far *pUNID,
NOTEID far *retNoteID, OID far *retOID,
TIMEDATE far *retModTime, WORD far *retClass);
STATUS LNPUBLIC NSFDbGetModifiedNoteTable (DBHANDLE hDB, WORD NoteClassMask, TIMEDATE Since,
TIMEDATE far *retUntil,
HANDLE far *rethTable);
STATUS LNPUBLIC NSFApplyModifiedNoteTable (HANDLE hModifiedNotes, HANDLE hTargetTable);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -