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

📄 gwc3po.h

📁 PGP8.0源码 请认真阅读您的文件包然后写出其具体功能
💻 H
📖 第 1 页 / 共 4 页
字号:
////////////////////////////////////////////////////////////////////////////////
//
//  File : gwc3po.h
//
//  Copyright (C) 2002 PGP Corporation
//
//  ABSTRACT
//		Header file
// 
//  Author: Satya S. Das
//
////////////////////////////////////////////////////////////////////////////////

#ifndef _GWC3PO_H_
#define _GWC3PO_H_

DEFINE_GUID(LIBID_PgpGwTypeLibrary,0xB79C7BA0L,0xF9AC,0x11CE,0x83,0x2C,0x44,0x45,0x53,0x54,0x00,0x00);
#ifndef BEGIN_INTERFACE
#define BEGIN_INTERFACE
#endif

interface DIC3POManager;

interface DICommandBlock;

interface DIMessageBlock;

interface IC3POManager;

interface ICommandBlock;

interface IMessageBlock;

typedef enum {
    eGW_CMDINIT_MENUS = 1,
    eGW_CMDINIT_VOLATILE_MENUS = 2,
    eGW_CMDINIT_TOOLBARS = 4,
    eGW_CMDINIT_VOLATILE_TOOLBARS = 8,
    eGW_CMDINIT_CONTEXT_MENUS = 16,
    eGW_CMDINIT_NO_PREDEFINED = 32
} GwCmdInit;

typedef enum {
    eGW_CMDVAL_CHECKED = 2,
    eGW_CMDVAL_DISABLED = 4
} GWCMDVALIDATION;

typedef enum {
    eGW_C3PO_NONE = 0,
    eGW_C3PO_APPT = 1,
    eGW_C3PO_DOCREF = 2,
    eGW_C3PO_MAIL = 4,
    eGW_C3PO_MESSAGE = 8,
    eGW_C3PO_NOTE = 16,
    eGW_C3PO_PHONE = 32,
    eGW_C3PO_TASK = 64
} GWC3POFLAGS;

typedef enum {
    eGW_GWMENU = 1,
    eGW_GWMENUACTION,
    eGW_GWMENUSEPARATOR
} GWOBJTYPE;

typedef enum {
    eGW_CMD_UNKNOWN,
    eGW_CMD_ACCEPT,
    eGW_CMD_ARCHIVE,
    eGW_CMD_COMPLETE,
    eGW_CMD_COMPOSE,
    eGW_CMD_DECLINE,
    eGW_CMD_DELEGATE,
    eGW_CMD_DELETE,
    eGW_CMD_DOC_CHECKIN,
    eGW_CMD_DOC_CHECKOUT,
    eGW_CMD_DOC_RESETINUSE,
    eGW_CMD_FORWARD,
    eGW_CMD_OPEN,
    eGW_CMD_PRINT,
    eGW_CMD_PROPERTIES,
    eGW_CMD_REPLY,
    eGW_CMD_RESEND,
    eGW_CMD_SAVE,
    eGW_CMD_SAVEAS,
    eGW_CMD_SETALARMS,
    eGW_CMD_UNDELETE,
    eGW_CMD_END_OF_LIST
} GW_COMMAND;

typedef enum {
    eGW_EVT_READY,
    eGW_EVT_DELIVERY,
    eGW_EVT_SHUTDOWN,
    eGW_EVT_OVERFLOW
} GW_EVENT;

DEFINE_GUID(IID_IC3POServer,0x5AAD2AA0L,0x7690,0x11CF,0x82,0x71,0x00,0x80,0x5F,0x8C,0x5D,0xE4);

/* Definition of interface: IC3POServer */
#undef INTERFACE
#define INTERFACE IC3POServer

DECLARE_INTERFACE_(IC3POServer, IUnknown)
{
BEGIN_INTERFACE
#ifndef NO_BASEINTERFACE_FUNCS

    /* IUnknown methods */
    STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
    STDMETHOD_(ULONG, AddRef)(THIS) PURE;
    STDMETHOD_(ULONG, Release)(THIS) PURE;
#endif

    /* IC3POServer methods */
    STDMETHOD(get_CommandFactory)(THIS_ IDispatch * FAR* ppIDispCommandFactory) PURE;
    STDMETHOD(get_Description)(THIS_ BSTR FAR* pbstrDescription) PURE;
    STDMETHOD(get_EventMonitor)(THIS_ IDispatch * FAR* ppIDispEventMonitor) PURE;
    STDMETHOD(get_IconFactory)(THIS_ IDispatch * FAR* ppIDispIconFactory) PURE;
    STDMETHOD(CanShutdown)(THIS_ VARIANT_BOOL FAR* pbCanShutdown) PURE;
    STDMETHOD(DeInit)(THIS) PURE;
    STDMETHOD(Init)(THIS_ IDispatch * pIDispManager) PURE;
};

DEFINE_GUID(DIID_DIC3POServer,0x5AAD2AA1L,0x7690,0x11CF,0x82,0x71,0x00,0x80,0x5F,0x8C,0x5D,0xE4);

/* Definition of dispatch interface: DIC3POServer */
#undef INTERFACE
#define INTERFACE DIC3POServer

DECLARE_INTERFACE_(DIC3POServer, IDispatch)
{
BEGIN_INTERFACE
#ifndef NO_BASEINTERFACE_FUNCS

    /* IUnknown methods */
    STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
    STDMETHOD_(ULONG, AddRef)(THIS) PURE;
    STDMETHOD_(ULONG, Release)(THIS) PURE;

    /* IDispatch methods */
    STDMETHOD(GetTypeInfoCount)(THIS_ UINT FAR* pctinfo) PURE;

    STDMETHOD(GetTypeInfo)(
      THIS_
      UINT itinfo,
      LCID lcid,
      ITypeInfo FAR* FAR* pptinfo) PURE;

    STDMETHOD(GetIDsOfNames)(
      THIS_
      REFIID riid,
      OLECHAR FAR* FAR* rgszNames,
      UINT cNames,
      LCID lcid,
      DISPID FAR* rgdispid) PURE;

    STDMETHOD(Invoke)(
      THIS_
      DISPID dispidMember,
      REFIID riid,
      LCID lcid,
      WORD wFlags,
      DISPPARAMS FAR* pdispparams,
      VARIANT FAR* pvarResult,
      EXCEPINFO FAR* pexcepinfo,
      UINT FAR* puArgErr) PURE;
#endif

/* Capable of dispatching all the methods of interface IC3POServer */
};

DEFINE_GUID(CLSID_C3POServer,0xCB210D80L,0xE920,0x11CF,0xB7,0x36,0x00,0x80,0x5F,0xAC,0x66,0x6A);

#ifdef __cplusplus
class C3POServer;
#endif

DEFINE_GUID(IID_IClientState,0x52A8BE60L,0xA1A5,0x11CF,0x82,0x71,0x00,0x80,0x5F,0x8C,0x5D,0xE4);

/* Definition of interface: IClientState */
#undef INTERFACE
#define INTERFACE IClientState

DECLARE_INTERFACE_(IClientState, IUnknown)
{
BEGIN_INTERFACE
#ifndef NO_BASEINTERFACE_FUNCS

    /* IUnknown methods */
    STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
    STDMETHOD_(ULONG, AddRef)(THIS) PURE;
    STDMETHOD_(ULONG, Release)(THIS) PURE;
#endif

    /* IClientState methods */
    STDMETHOD(get_ClientName)(THIS_ BSTR FAR* pbstrClientName) PURE;
    STDMETHOD(get_MajorVersion)(THIS_ long FAR* plMajorVersion) PURE;
    STDMETHOD(get_MinorVersion)(THIS_ long FAR* plMinorVersion) PURE;
    STDMETHOD(BuildCommand)(THIS_ BSTR bstrContext, BSTR bstrPersistentID, IDispatch * pIDispBaseCommand, IDispatch * pIDispParameters, IDispatch * FAR* ppIDispGWCommand) PURE;
    STDMETHOD(BuildPersistentID)(THIS_ long lID, VARIANT vObjFrom, BSTR FAR* pbstrPersistentID) PURE;
};

DEFINE_GUID(DIID_DIClientState,0x52A8BE61L,0xA1A5,0x11CF,0x82,0x71,0x00,0x80,0x5F,0x8C,0x5D,0xE4);

/* Definition of dispatch interface: DIClientState */
#undef INTERFACE
#define INTERFACE DIClientState

DECLARE_INTERFACE_(DIClientState, IDispatch)
{
BEGIN_INTERFACE
#ifndef NO_BASEINTERFACE_FUNCS

    /* IUnknown methods */
    STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
    STDMETHOD_(ULONG, AddRef)(THIS) PURE;
    STDMETHOD_(ULONG, Release)(THIS) PURE;

    /* IDispatch methods */
    STDMETHOD(GetTypeInfoCount)(THIS_ UINT FAR* pctinfo) PURE;

    STDMETHOD(GetTypeInfo)(
      THIS_
      UINT itinfo,
      LCID lcid,
      ITypeInfo FAR* FAR* pptinfo) PURE;

    STDMETHOD(GetIDsOfNames)(
      THIS_
      REFIID riid,
      OLECHAR FAR* FAR* rgszNames,
      UINT cNames,
      LCID lcid,
      DISPID FAR* rgdispid) PURE;

    STDMETHOD(Invoke)(
      THIS_
      DISPID dispidMember,
      REFIID riid,
      LCID lcid,
      WORD wFlags,
      DISPPARAMS FAR* pdispparams,
      VARIANT FAR* pvarResult,
      EXCEPINFO FAR* pexcepinfo,
      UINT FAR* puArgErr) PURE;
#endif

/* Capable of dispatching all the methods of interface IClientState */
};

DEFINE_GUID(CLSID_ClientState,0xCB210D81L,0xE920,0x11CF,0xB7,0x36,0x00,0x80,0x5F,0xAC,0x66,0x6A);

#ifdef __cplusplus
class ClientState;
#endif

DEFINE_GUID(IID_ICommandFactory,0xAA45EBA0L,0x24C5,0x11CF,0xB7,0x35,0x00,0x80,0x5F,0xAC,0x66,0x6A);

/* Definition of interface: ICommandFactory */
#undef INTERFACE
#define INTERFACE ICommandFactory

DECLARE_INTERFACE_(ICommandFactory, IUnknown)
{
BEGIN_INTERFACE
#ifndef NO_BASEINTERFACE_FUNCS

    /* IUnknown methods */
    STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
    STDMETHOD_(ULONG, AddRef)(THIS) PURE;
    STDMETHOD_(ULONG, Release)(THIS) PURE;
#endif

    /* ICommandFactory methods */
    STDMETHOD(BuildCommand)(THIS_ BSTR bstrContext, BSTR bstrPersistentID, IDispatch * pIDispBaseCommand, IDispatch * pIDispParameters, IDispatch * FAR* ppIDispGWCommand) PURE;
    STDMETHOD(CustomizeContextMenu)(THIS_ BSTR bstrContext, IDispatch * pIDispGWMenu) PURE;
    STDMETHOD(CustomizeMenu)(THIS_ BSTR bstrContext, IDispatch * pIDispGWMenu, VARIANT_BOOL FAR* pbChanged) PURE;
    STDMETHOD(CustomizeToolbar)(THIS_ BSTR bstrContext, IDispatch * pIDispGWToolbar, VARIANT_BOOL FAR* pbChanged) PURE;
    STDMETHOD(Init)(THIS_ long lcid, long FAR* plCmdFlags) PURE;
    STDMETHOD(WantCommand)(THIS_ BSTR bstrContext, BSTR bstrPersistentID, VARIANT_BOOL FAR* pbChanged) PURE;
};

DEFINE_GUID(DIID_DICommandFactory,0x0457D7A9L,0x7374,0x11CF,0x82,0x71,0x00,0x80,0x5F,0x8C,0x5D,0xE4);

/* Definition of dispatch interface: DICommandFactory */
#undef INTERFACE
#define INTERFACE DICommandFactory

DECLARE_INTERFACE_(DICommandFactory, IDispatch)
{
BEGIN_INTERFACE
#ifndef NO_BASEINTERFACE_FUNCS

    /* IUnknown methods */
    STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
    STDMETHOD_(ULONG, AddRef)(THIS) PURE;
    STDMETHOD_(ULONG, Release)(THIS) PURE;

    /* IDispatch methods */
    STDMETHOD(GetTypeInfoCount)(THIS_ UINT FAR* pctinfo) PURE;

    STDMETHOD(GetTypeInfo)(
      THIS_
      UINT itinfo,
      LCID lcid,
      ITypeInfo FAR* FAR* pptinfo) PURE;

    STDMETHOD(GetIDsOfNames)(
      THIS_
      REFIID riid,
      OLECHAR FAR* FAR* rgszNames,
      UINT cNames,
      LCID lcid,
      DISPID FAR* rgdispid) PURE;

    STDMETHOD(Invoke)(
      THIS_
      DISPID dispidMember,
      REFIID riid,
      LCID lcid,
      WORD wFlags,
      DISPPARAMS FAR* pdispparams,
      VARIANT FAR* pvarResult,
      EXCEPINFO FAR* pexcepinfo,
      UINT FAR* puArgErr) PURE;
#endif

/* Capable of dispatching all the methods of interface ICommandFactory */
};

DEFINE_GUID(CLSID_CommandFactory,0xCB210D82L,0xE920,0x11CF,0xB7,0x36,0x00,0x80,0x5F,0xAC,0x66,0x6A);

#ifdef __cplusplus
class CommandFactory;
#endif

DEFINE_GUID(IID_IEventMonitor,0xBF2DDE65L,0x8C8F,0x11CF,0x82,0x71,0x00,0x80,0x5F,0x8C,0x5D,0xE4);

/* Definition of interface: IEventMonitor */
#undef INTERFACE
#define INTERFACE IEventMonitor

DECLARE_INTERFACE_(IEventMonitor, IUnknown)
{
BEGIN_INTERFACE
#ifndef NO_BASEINTERFACE_FUNCS

    /* IUnknown methods */
    STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
    STDMETHOD_(ULONG, AddRef)(THIS) PURE;
    STDMETHOD_(ULONG, Release)(THIS) PURE;
#endif

    /* IEventMonitor methods */
    STDMETHOD(Notify)(THIS_ BSTR bstrContext, IDispatch * pIDispGWEvent) PURE;
};

DEFINE_GUID(DIID_DIEventMonitor,0xBF2DDE64L,0x8C8F,0x11CF,0x82,0x71,0x00,0x80,0x5F,0x8C,0x5D,0xE4);

/* Definition of dispatch interface: DIEventMonitor */
#undef INTERFACE
#define INTERFACE DIEventMonitor

DECLARE_INTERFACE_(DIEventMonitor, IDispatch)
{
BEGIN_INTERFACE
#ifndef NO_BASEINTERFACE_FUNCS

    /* IUnknown methods */
    STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
    STDMETHOD_(ULONG, AddRef)(THIS) PURE;
    STDMETHOD_(ULONG, Release)(THIS) PURE;

    /* IDispatch methods */
    STDMETHOD(GetTypeInfoCount)(THIS_ UINT FAR* pctinfo) PURE;

    STDMETHOD(GetTypeInfo)(
      THIS_
      UINT itinfo,
      LCID lcid,
      ITypeInfo FAR* FAR* pptinfo) PURE;

    STDMETHOD(GetIDsOfNames)(
      THIS_
      REFIID riid,
      OLECHAR FAR* FAR* rgszNames,
      UINT cNames,
      LCID lcid,
      DISPID FAR* rgdispid) PURE;

    STDMETHOD(Invoke)(
      THIS_
      DISPID dispidMember,
      REFIID riid,
      LCID lcid,
      WORD wFlags,
      DISPPARAMS FAR* pdispparams,
      VARIANT FAR* pvarResult,
      EXCEPINFO FAR* pexcepinfo,
      UINT FAR* puArgErr) PURE;
#endif

/* Capable of dispatching all the methods of interface IEventMonitor */
};

DEFINE_GUID(CLSID_EventMonitor,0xCB210D83L,0xE920,0x11CF,0xB7,0x36,0x00,0x80,0x5F,0xAC,0x66,0x6A);

#ifdef __cplusplus
class EventMonitor;
#endif

DEFINE_GUID(IID_IGWClientState,0xBF2DDE62L,0x8C8F,0x11CF,0x82,0x71,0x00,0x80,0x5F,0x8C,0x5D,0xE4);

/* Definition of interface: IGWClientState */
#undef INTERFACE
#define INTERFACE IGWClientState

DECLARE_INTERFACE_(IGWClientState, IClientState)
{
BEGIN_INTERFACE
#ifndef NO_BASEINTERFACE_FUNCS

    /* IUnknown methods */
    STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
    STDMETHOD_(ULONG, AddRef)(THIS) PURE;
    STDMETHOD_(ULONG, Release)(THIS) PURE;

    /* IClientState methods */

⌨️ 快捷键说明

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