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

📄 odma.h

📁 PGP8.0源码 请认真阅读您的文件包然后写出其具体功能
💻 H
字号:
/* odma.h - Definitions, prototypes, etc. for Open Document Managment API
	(ODMA) version 1.0.

	COPYRIGHT (C) 1994, 1995
	AIIM International
	All Right Reserved
*/

#ifndef ODMA_H
#define ODMA_H

/* Type definitions */
typedef LPVOID ODMHANDLE;
typedef LPSTR (*ODMSAVEASCALLBACK)(DWORD dwEnvData, LPSTR lpszFormat, LPVOID pInstanceData);
typedef int ODMSTATUS;

/* Constants */
#define ODM_API_VERSION			150		/* Version of the API */

#ifdef WIN32
	#define ODM_DOCID_MAX		255		/* Win32 */
#elif defined( _WINDOWS_ ) || defined( _MSDOS )
	#define ODM_DOCID_MAX		80			/* Windows 3.x */
#else
	#define ODM_DOCID_MAX		255		/* Other platforms */
#endif

#define ODM_DMSID_MAX			9		/* Max length of a DMS ID including the 
										/* terminating NULL character.  */

#define ODM_APPID_MAX			16		/* Max length of a application ID including
										/* the terminating NULL character.  */


/* Maximum length of a filename returned by ODMA including the terminating
	NULL character.  Platform dependent. */

#ifdef WIN32
	#define ODM_FILENAME_MAX	255		/* Win32 */
#elif defined( _WINDOWS_ ) || defined( _MSDOS )
	#define ODM_FILENAME_MAX	128		/* Windows 3.x */
#elif defined( unix ) || defined( _UNIX )
	#define ODM_FILENAME_MAX	1024		/* Unix */
#else
	#define ODM_FILENAME_MAX	255		/* Other platforms */
#endif



/* Common format type names */
#define ODM_FORMAT_TEXT	"Text"
#define ODM_FORMAT_RTF	"Rich text format"
#define ODM_FORMAT_DCA	"DCA RFT"		/* IBM DCA Rich Format Text */
#define ODM_FORMAT_TIFF	"Tiff"
#define ODM_FORMAT_GIF	"Gif"				/* Compuserve Graphics Interchange Format */
#define ODM_FORMAT_BMP	"Windows bitmap"
#define ODM_FORMAT_PCX	"PCX"
#define ODM_FORMAT_CGM	"CGM"				/* Computer Graphics Metafile */
#define ODM_FORMAT_EXE	"Executable file"
#define ODM_FORMAT_PCL	"PCL"				/* HP Printer Control Language */
#define ODM_FORMAT_PS	"PostScript"


/* Error returns */
#define ODM_NOERROR			0		// Success!
#define ODM_E_FAIL			1		/* Unspecified failure */
#define ODM_E_CANCEL		2		/* Action was cancelled at user's request */
#define ODM_E_NODMS			3		/* DMS not registered */
#define ODM_E_CANTINIT		4		/* DMS failed to initalize */
#define ODM_E_VERSION		5		/* DMS doesn't support the requested 
									           version of ODMA */
#define ODM_E_APPSELECT		6        /* User has indicated that he wants to use 
                                       the application's file selection 
                                       capabilities rather than those of the 
                                       DMS. */
#define ODM_E_USERINT      7        /* Requested action cannot be performed 
                                       without user interaction, but silent 
                                       mode was specified. */
#define ODM_E_HANDLE       8        /* The DMHANDLE argument was invalid. */
#define ODM_E_ACCESS       9        /* User does not have requested access 
                                       rights to specified document. */
#define ODM_E_INUSE       10        /* Document is currently in use and cannot 
                                       be accessed in specified mode. */
#define ODM_E_DOCID       11        /* Invalid document ID */
#define ODM_E_OPENMODE    12        /* The specified action is incompatible 
                                       with the mode in which the document was
                                       opened. */
#define ODM_E_NOOPEN      13        /* The specified document is not open. */
#define ODM_E_ITEM        14        /* Invalid item specifier. */
#define ODM_E_OTHERAPP    15        /* Selected document was for another app. */
#define ODM_E_NOMOREDATA  16		/* No more data is available */
#define ODM_E_PARTIALSUCCESS 17		/* */

/* ODMOpenDoc modes */
#define ODM_MODIFYMODE     1        /* Open document in a modifiable mode. */
#define ODM_VIEWMODE       2        /* Open document in non-modifiable mode. */

/* Actions for ODMActivate */
#define ODM_NONE           0        /* No specific action is requested.  */
#define ODM_DELETE         1        /* Delete the specified document.  */
#define ODM_SHOWATTRIBUTES 2        /* Display the specified document's profile 
                                       or attributes. */
#define ODM_EDITATTRIBUTES 3        /* Edit the specified document's profile or
                                       attributes. */
#define ODM_VIEWDOC        4        /* Display the specified document in a 
                                       viewer window. */
#define ODM_OPENDOC        5        /* Open the specified document in its 
                                       native application.  */

/* Item selectors for ODMGetDocInfo and ODMSetDocInfo */
#define ODM_AUTHOR         1        /* Author of the document. */
#define ODM_NAME           2        /* Descriptive name of the document.  */
#define ODM_TYPE           3        /* Type of the document.  */
#define ODM_TITLETEXT      4        /* Suggested text to display in the 
                                       document window's title bar. */
#define ODM_DMS_DEFINED    5        /* DMS defined data. */
#define ODM_CONTENTFORMAT  6        /* String describing document's format */

/* Misc. modes, flags */
#define ODM_SILENT        16        /* Don't interact with the user while
                                       fulfilling this request. */
// Flags for Query Interface
#define ODM_ALL				1		// All DMS's should be searched
#define ODM_SPECIFIC		2		// Only specific DMS's should be searched

/* Function prototypes */
#ifdef __cplusplus
extern "C" {
#endif

ODMSTATUS WINAPI ODMRegisterApp(ODMHANDLE FAR *pOdmHandle, WORD version,
	LPSTR lpszAppId, DWORD dwEnvData, LPVOID pReserved);

void WINAPI ODMUnRegisterApp(ODMHANDLE odmHandle);

ODMSTATUS WINAPI ODMSelectDoc(ODMHANDLE odmHandle, LPSTR lpszDocId,
	LPDWORD pdwFlags);

ODMSTATUS WINAPI ODMOpenDoc(ODMHANDLE odmHandle, DWORD flags,
	LPSTR lpszDocId, LPSTR lpszDocLocation);

ODMSTATUS WINAPI ODMSaveDoc(ODMHANDLE odmHandle, LPSTR lpszDocId,
	LPSTR lpszNewDocId);

ODMSTATUS WINAPI ODMCloseDoc(ODMHANDLE odmHandle, LPSTR lpszDocId,
	DWORD activeTime, DWORD pagesPrinted, LPVOID sessionData, WORD dataLen);

ODMSTATUS WINAPI ODMNewDoc(ODMHANDLE odmHandle, LPSTR lpszDocId,
	DWORD dwFlags, LPSTR lpszFormat, LPSTR lpszDocLocation);

ODMSTATUS WINAPI ODMSaveAs(ODMHANDLE odmHandle, LPSTR lpszDocId,
	LPSTR lpszNewDocId, LPSTR lpszFormat, ODMSAVEASCALLBACK pcbCallBack,
	LPVOID pInstanceData);

ODMSTATUS WINAPI ODMActivate(ODMHANDLE odmHandle, WORD action,
	LPSTR lpszDocId);

ODMSTATUS WINAPI ODMGetDocInfo(ODMHANDLE odmHandle, LPSTR lpszDocId,
	WORD item, LPSTR lpszData, WORD dataLen);

ODMSTATUS WINAPI ODMSetDocInfo(ODMHANDLE odmHandle, LPSTR lpszDocId,
	WORD item, LPSTR lpszData);

ODMSTATUS WINAPI ODMGetDMSInfo(ODMHANDLE odmHandle, LPSTR lpszDmsId,
	LPWORD pwVerNo, LPDWORD pdwExtensions);

/* Query Enhancements */
WORD WINAPI ODMGetDMSCount();

WORD WINAPI ODMGetDMSList( LPSTR buffer, WORD buffer_size );

ODMSTATUS WINAPI ODMSetDMS( LPCSTR lpszAppId, LPCSTR lpszDMSId );

ODMSTATUS WINAPI ODMQueryExecute( ODMHANDLE odmHandle, LPCSTR lpszQuery, DWORD flags, LPCSTR lpszDMSList, LPSTR queryId );

ODMSTATUS WINAPI ODMQueryGetResults( ODMHANDLE odmHandle, LPCSTR queryId, LPSTR lpszDocId, LPSTR lpszDocName, WORD docNameLen, WORD *docCount );

ODMSTATUS WINAPI ODMQueryClose( ODMHANDLE odmHandle, LPCSTR queryId );

#ifdef __cplusplus
}
#endif

#endif

⌨️ 快捷键说明

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