Annotation of mstools/ole20/h/moniker.h, revision 1.1

1.1     ! root        1: // moniker.h - moniker and related interfaces and APIs
        !             2: #if !defined( _MONIKER_H_ )
        !             3: #define _MONIKER_H_
        !             4: 
        !             5: #define MK_E_CONNECTMANUALLY        MK_E_FIRST
        !             6: #define MK_E_EXCEEDEDDEADLINE       (MK_E_FIRST + 1)
        !             7: #define MK_E_NEEDGENERIC            (MK_E_FIRST + 2)
        !             8: #define MK_E_UNAVAILABLE            (MK_E_FIRST + 3)
        !             9: #define MK_E_SYNTAX                 (MK_E_FIRST + 4)
        !            10: #define MK_E_NOOBJECT               (MK_E_FIRST + 5)
        !            11: #define MK_E_INVALIDEXTENSION       (MK_E_FIRST + 6)
        !            12: #define MK_E_INTERMEDIATEINTERFACENOTSUPPORTED (MK_E_FIRST + 7)
        !            13: #define MK_E_NOTBINDABLE            (MK_E_FIRST + 8)
        !            14: #define MK_E_NOTBOUND               (MK_E_FIRST + 9)
        !            15:                             // called IBindCtx->RevokeObjectBound for an
        !            16:                             // object which was not bound
        !            17: #define MK_E_CANTOPENFILE           (MK_E_FIRST + 10)
        !            18: #define MK_E_MUSTBOTHERUSER         (MK_E_FIRST + 11)
        !            19: #define MK_E_NOINVERSE              (MK_E_FIRST + 12)
        !            20: #define MK_E_NOSTORAGE              (MK_E_FIRST + 13)
        !            21: #define MK_E_NOPREFIX               (MK_E_FIRST + 14)
        !            22: 
        !            23: 
        !            24: // reserved                     MK_S_FIRST
        !            25: // reserved                     (MK_S_FIRST + 1)
        !            26: #define MK_S_REDUCED_TO_SELF    (MK_S_FIRST + 2)
        !            27: // reserved                     (MK_S_FIRST + 3)
        !            28: #define MK_S_ME                 (MK_S_FIRST + 4)
        !            29: #define MK_S_HIM                (MK_S_FIRST + 5)
        !            30: #define MK_S_US                 (MK_S_FIRST + 6)
        !            31: #ifdef OLE2SHIP
        !            32: #define MK_S_MONIKERALREADYREGISTERED (MK_S_FIRST + 7)
        !            33: #else
        !            34: #define MK_S_MONIKERALREADYREGISTERED (MK_S_FIRST + 6)
        !            35: #endif
        !            36: 
        !            37: 
        !            38: 
        !            39: // bind options; variable sized
        !            40: typedef struct FARSTRUCT tagBIND_OPTS
        !            41: {
        !            42:     DWORD       cbStruct;       //  sizeof(BIND_OPTS)
        !            43:     DWORD       grfFlags;
        !            44:     DWORD       grfMode;
        !            45:     DWORD       dwTickCountDeadline;
        !            46: } BIND_OPTS, FAR* LPBIND_OPTS;
        !            47: 
        !            48: 
        !            49: // bind flags; controls binding; stored in bind options above
        !            50: typedef enum
        !            51: {
        !            52:     BIND_MAYBOTHERUSER = 1,
        !            53:     BIND_JUSTTESTEXISTENCE = 2
        !            54: } BIND_FLAGS;
        !            55: 
        !            56: 
        !            57: // system moniker types; returned from IsSystemMoniker.
        !            58: typedef enum tagMKSYS
        !            59: {
        !            60:     MKSYS_NONE = 0,
        !            61:     MKSYS_GENERICCOMPOSITE = 1,
        !            62:     MKSYS_FILEMONIKER = 2,
        !            63:     MKSYS_ANTIMONIKER = 3,
        !            64:     MKSYS_ITEMMONIKER = 4,
        !            65:     MKSYS_POINTERMONIKER = 5
        !            66: }MKSYS;
        !            67: 
        !            68: 
        !            69: // bit wise enum to control how much reduction takes place.
        !            70: typedef enum tagMKREDUCE
        !            71: {
        !            72:     MKRREDUCE_ONE           =   3<<16,
        !            73:     MKRREDUCE_TOUSER        =   2<<16,
        !            74:     MKRREDUCE_THROUGHUSER   =   1<<16,
        !            75:     MKRREDUCE_ALL           =   0
        !            76: } MKRREDUCE;
        !            77: 
        !            78: 
        !            79: #if defined(__cplusplus)
        !            80: interface IEnumMoniker;
        !            81: interface IRunningObjectTable;
        !            82: #else 
        !            83: typedef interface IEnumMoniker IEnumMoniker;
        !            84: typedef interface IRunningObjectTable IRunningObjectTable;
        !            85: #endif
        !            86: 
        !            87: typedef       IEnumMoniker FAR* LPENUMMONIKER;
        !            88: typedef         IRunningObjectTable FAR* LPRUNNINGOBJECTTABLE;
        !            89: 
        !            90: 
        !            91: 
        !            92: #undef  INTERFACE
        !            93: #define INTERFACE   IBindCtx
        !            94: 
        !            95: DECLARE_INTERFACE_(IBindCtx, IUnknown)
        !            96: {
        !            97:     // *** IUnknown methods ***
        !            98:     STDMETHOD(QueryInterface) (THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
        !            99:     STDMETHOD_(ULONG,AddRef) (THIS)  PURE;
        !           100:     STDMETHOD_(ULONG,Release) (THIS) PURE;
        !           101: 
        !           102:     // *** IBindCtx methods ***
        !           103:     STDMETHOD(RegisterObjectBound) (THIS_ LPUNKNOWN punk) PURE;
        !           104:     STDMETHOD(RevokeObjectBound) (THIS_ LPUNKNOWN punk) PURE;
        !           105:     STDMETHOD(ReleaseBoundObjects) (THIS) PURE;
        !           106:     
        !           107:     STDMETHOD(SetBindOptions) (THIS_ LPBIND_OPTS pbindopts) PURE;
        !           108:     STDMETHOD(GetBindOptions) (THIS_ LPBIND_OPTS pbindopts) PURE;
        !           109:     STDMETHOD(GetRunningObjectTable) (THIS_ LPRUNNINGOBJECTTABLE  FAR*
        !           110:         pprot) PURE;
        !           111:     STDMETHOD(RegisterObjectParam) (THIS_ LPSTR lpszKey, LPUNKNOWN punk) PURE;
        !           112:     STDMETHOD(GetObjectParam) (THIS_ LPSTR lpszKey, LPUNKNOWN FAR* ppunk) PURE;
        !           113:     STDMETHOD(EnumObjectParam) (THIS_ LPENUMSTRING FAR* ppenum) PURE;
        !           114:     STDMETHOD(RevokeObjectParam) (THIS_ LPSTR lpszKey) PURE;
        !           115: };
        !           116: typedef             IBindCtx FAR* LPBC;
        !           117: typedef         IBindCtx FAR* LPBINDCTX;
        !           118: 
        !           119: 
        !           120: 
        !           121: #undef  INTERFACE
        !           122: #define INTERFACE   IMoniker
        !           123: 
        !           124: DECLARE_INTERFACE_(IMoniker, IPersistStream)
        !           125: {
        !           126:     // *** IUnknown methods ***
        !           127:     STDMETHOD(QueryInterface) (THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
        !           128:     STDMETHOD_(ULONG,AddRef) (THIS)  PURE;
        !           129:     STDMETHOD_(ULONG,Release) (THIS) PURE;
        !           130: 
        !           131:     // *** IPersist methods ***
        !           132:     STDMETHOD(GetClassID) (THIS_ LPCLSID lpClassID) PURE;
        !           133: 
        !           134:     // *** IPersistStream methods ***
        !           135:     STDMETHOD(IsDirty) (THIS) PURE;
        !           136:     STDMETHOD(Load) (THIS_ LPSTREAM pStm) PURE;
        !           137:     STDMETHOD(Save) (THIS_ LPSTREAM pStm,
        !           138:                     BOOL fClearDirty) PURE;
        !           139:     STDMETHOD(GetSizeMax) (THIS_ ULARGE_INTEGER FAR * pcbSize) PURE;
        !           140: 
        !           141:     // *** IMoniker methods ***
        !           142:     STDMETHOD(BindToObject) (THIS_ LPBC pbc, LPMONIKER pmkToLeft,
        !           143:         REFIID riidResult, LPVOID FAR* ppvResult) PURE;
        !           144:     STDMETHOD(BindToStorage) (THIS_ LPBC pbc, LPMONIKER pmkToLeft,
        !           145:         REFIID riid, LPVOID FAR* ppvObj) PURE;
        !           146:     STDMETHOD(Reduce) (THIS_ LPBC pbc, DWORD dwReduceHowFar, LPMONIKER FAR*
        !           147:         ppmkToLeft, LPMONIKER FAR * ppmkReduced) PURE;
        !           148:     STDMETHOD(ComposeWith) (THIS_ LPMONIKER pmkRight, BOOL fOnlyIfNotGeneric,
        !           149:         LPMONIKER FAR* ppmkComposite) PURE;
        !           150:     STDMETHOD(Enum) (THIS_ BOOL fForward, LPENUMMONIKER FAR* ppenumMoniker)
        !           151:         PURE;
        !           152:     STDMETHOD(IsEqual) (THIS_ LPMONIKER pmkOtherMoniker) PURE;
        !           153:     STDMETHOD(Hash) (THIS_ LPDWORD pdwHash) PURE;
        !           154:     STDMETHOD(IsRunning) (THIS_ LPBC pbc, LPMONIKER pmkToLeft, LPMONIKER
        !           155:         pmkNewlyRunning) PURE;
        !           156:     STDMETHOD(GetTimeOfLastChange) (THIS_ LPBC pbc, LPMONIKER pmkToLeft,
        !           157:         FILETIME FAR* pfiletime) PURE;
        !           158:     STDMETHOD(Inverse) (THIS_ LPMONIKER FAR* ppmk) PURE;
        !           159:     STDMETHOD(CommonPrefixWith) (THIS_ LPMONIKER pmkOther, LPMONIKER FAR*
        !           160:         ppmkPrefix) PURE;
        !           161:     STDMETHOD(RelativePathTo) (THIS_ LPMONIKER pmkOther, LPMONIKER FAR*
        !           162:         ppmkRelPath) PURE;
        !           163:     STDMETHOD(GetDisplayName) (THIS_ LPBC pbc, LPMONIKER pmkToLeft,
        !           164:         LPSTR FAR* lplpszDisplayName) PURE;
        !           165:     STDMETHOD(ParseDisplayName) (THIS_ LPBC pbc, LPMONIKER pmkToLeft,
        !           166:         LPSTR lpszDisplayName, ULONG FAR* pchEaten,
        !           167:         LPMONIKER FAR* ppmkOut) PURE;
        !           168:     STDMETHOD(IsSystemMoniker) (THIS_ LPDWORD pdwMksys) PURE;
        !           169: };
        !           170: typedef         IMoniker FAR* LPMONIKER;
        !           171: 
        !           172: 
        !           173: 
        !           174: #undef  INTERFACE
        !           175: #define INTERFACE   IRunningObjectTable
        !           176: 
        !           177: DECLARE_INTERFACE_(IRunningObjectTable, IUnknown)
        !           178: {
        !           179:     // *** IUnknown methods ***
        !           180:     STDMETHOD(QueryInterface) (THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
        !           181:     STDMETHOD_(ULONG,AddRef) (THIS)  PURE;
        !           182:     STDMETHOD_(ULONG,Release) (THIS) PURE;
        !           183: 
        !           184:     // *** IRunningObjectTable methods ***
        !           185:     STDMETHOD(Register) (THIS_ DWORD grfFlags, LPUNKNOWN punkObject, 
        !           186:         LPMONIKER pmkObjectName, DWORD FAR * pdwRegister) PURE;
        !           187:     STDMETHOD(Revoke) (THIS_ DWORD dwRegister) PURE;
        !           188:     STDMETHOD(IsRunning) (THIS_ LPMONIKER pmkObjectName) PURE;
        !           189:     STDMETHOD(GetObject) (THIS_ LPMONIKER pmkObjectName,
        !           190:         LPUNKNOWN FAR* ppunkObject) PURE;
        !           191:     STDMETHOD(NoteChangeTime) (THIS_ DWORD dwRegister, FILETIME FAR * pfiletime) PURE;
        !           192:     STDMETHOD(GetTimeOfLastChange) (THIS_ LPMONIKER pmkObjectName, FILETIME FAR * pfiletime) PURE;
        !           193:     STDMETHOD(EnumRunning) (THIS_ LPENUMMONIKER FAR * ppenumMoniker ) PURE;
        !           194: #ifndef OLE2SHIP
        !           195:     STDMETHOD(Advise) (THIS_ IAdviseSink FAR * pAdvSink, DWORD FAR * pdwConnection ) PURE;
        !           196:     STDMETHOD(Unadvise) (THIS_ DWORD dwConnection ) PURE;
        !           197:     STDMETHOD(EnumAdvise) (THIS_ IEnumSTATDATA FAR * ppenumAdvise) PURE;
        !           198: #endif
        !           199: };
        !           200: typedef         IRunningObjectTable FAR* LPRUNNINGOBJECTTABLE;
        !           201: 
        !           202: 
        !           203: 
        !           204: #undef  INTERFACE
        !           205: #define INTERFACE   IEnumMoniker
        !           206: 
        !           207: DECLARE_INTERFACE_(IEnumMoniker, IUnknown)
        !           208: {
        !           209:     // *** IUnknown methods ***
        !           210:     STDMETHOD(QueryInterface) (THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
        !           211:     STDMETHOD_(ULONG,AddRef) (THIS)  PURE;
        !           212:     STDMETHOD_(ULONG,Release) (THIS) PURE;
        !           213: 
        !           214:     // *** IEnumOleDataObject methods ***
        !           215:     STDMETHOD(Next) (THIS_ ULONG celt, LPMONIKER FAR* rgelt, ULONG FAR* pceltFetched) PURE;
        !           216:     STDMETHOD(Skip) (THIS_ ULONG celt) PURE;
        !           217:     STDMETHOD(Reset) (THIS) PURE;
        !           218:     STDMETHOD(Clone) (THIS_ IEnumMoniker FAR* FAR* ppenm) PURE;
        !           219: };
        !           220: typedef       IEnumMoniker FAR* LPENUMMONIKER;
        !           221: 
        !           222: 
        !           223: 
        !           224: 
        !           225: STDAPI  BindMoniker(LPMONIKER pmk, DWORD grfOpt, REFIID iidResult, LPVOID FAR* ppvResult);
        !           226: STDAPI  MkParseDisplayName(LPBC pbc, LPSTR szUserName, 
        !           227:                 ULONG FAR * pchEaten, LPMONIKER FAR * ppmk);
        !           228: STDAPI  MonikerRelativePathTo(LPMONIKER pmkSrc, LPMONIKER pmkDest, LPMONIKER
        !           229:                 FAR* ppmkRelPath, BOOL fCalledFromMethod);
        !           230: #ifdef OLE2SHIP
        !           231: STDAPI  MonikerCommonPrefixWith(LPMONIKER pmkThis, LPMONIKER pmkOther,
        !           232:                 LPMONIKER FAR* ppmkCommon);
        !           233: #endif
        !           234: STDAPI  CreateBindCtx(DWORD reserved, LPBC FAR* ppbc);
        !           235: STDAPI  CreateGenericComposite(LPMONIKER pmkFirst, LPMONIKER pmkRest,
        !           236:                 LPMONIKER FAR* ppmkComposite);
        !           237: STDAPI  GetClassFile (LPCSTR szFilename, CLSID FAR* pclsid);
        !           238: 
        !           239: STDAPI  CreateFileMoniker(LPSTR lpszPathName, LPMONIKER FAR* ppmk);
        !           240: STDAPI  CreateItemMoniker(LPSTR lpszDelim, LPSTR lpszItem,
        !           241:                 LPMONIKER FAR* ppmk);
        !           242: STDAPI  CreateAntiMoniker(LPMONIKER FAR* ppmk);
        !           243: STDAPI  CreatePointerMoniker(LPUNKNOWN punk, LPMONIKER FAR* ppmk);
        !           244: 
        !           245: STDAPI  GetRunningObjectTable( DWORD reserved, LPRUNNINGOBJECTTABLE FAR* pprot);
        !           246: 
        !           247: 
        !           248: #ifndef OLE2SHIP
        !           249: 
        !           250: #define MK_E_EXCEEDED_DEADLINE      MK_E_EXCEEDEDDEADLINE
        !           251: #define MK_E_NEED_GENERIC           MK_E_NEEDGENERIC
        !           252: #define MK_E_INVALID_EXTENSION      MK_E_INVALIDEXTENSION
        !           253: #define MK_E_INTERMEDIATE_INTERFACE_NOT_SUPPORTED MK_E_INTERMEDIATEINTERFACENONOT_SUPPORTED
        !           254: #define MK_E_NOT_BINDABLE           MK_E_NOTBINDABLE
        !           255: #define S_TRUE                      S_OK
        !           256: #define MK_S_NOT_RUNNING        MK_S_FIRST
        !           257: #define MK_S_NO_STORAGE         (MK_S_FIRST + 1)
        !           258: #define MK_S_NOPREFIX           (MK_S_FIRST + 3)
        !           259: 
        !           260: #endif
        !           261: 
        !           262: #endif  // _MONIKER_H_

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.