| /* | 
 |  * Copyright 2004 Kevin Koltzau | 
 |  * | 
 |  * This library is free software; you can redistribute it and/or | 
 |  * modify it under the terms of the GNU Lesser General Public | 
 |  * License as published by the Free Software Foundation; either | 
 |  * version 2.1 of the License, or (at your option) any later version. | 
 |  * | 
 |  * This library is distributed in the hope that it will be useful, | 
 |  * but WITHOUT ANY WARRANTY; without even the implied warranty of | 
 |  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU | 
 |  * Lesser General Public License for more details. | 
 |  * | 
 |  * You should have received a copy of the GNU Lesser General Public | 
 |  * License along with this library; if not, write to the Free Software | 
 |  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA | 
 |  */ | 
 |  | 
 | #ifndef DO_NO_IMPORTS | 
 | import "ocidl.idl"; | 
 | import "oleidl.idl"; | 
 | import "oaidl.idl"; | 
 | import "servprov.idl"; | 
 | #endif | 
 |  | 
 | cpp_quote("#define fdexNameCaseSensitive       0x00000001L") | 
 | cpp_quote("#define fdexNameEnsure              0x00000002L") | 
 | cpp_quote("#define fdexNameImplicit            0x00000004L") | 
 | cpp_quote("#define fdexNameCaseInsensitive     0x00000008L") | 
 | cpp_quote("#define fdexNameInternal            0x00000010L") | 
 | cpp_quote("#define fdexNameNoDynamicProperties 0x00000020L") | 
 |  | 
 | cpp_quote("#define fdexPropCanGet              0x00000001L") | 
 | cpp_quote("#define fdexPropCannotGet           0x00000002L") | 
 | cpp_quote("#define fdexPropCanPut              0x00000004L") | 
 | cpp_quote("#define fdexPropCannotPut           0x00000008L") | 
 | cpp_quote("#define fdexPropCanPutRef           0x00000010L") | 
 | cpp_quote("#define fdexPropCannotPutRef        0x00000020L") | 
 | cpp_quote("#define fdexPropNoSideEffects       0x00000040L") | 
 | cpp_quote("#define fdexPropDynamicType         0x00000080L") | 
 | cpp_quote("#define fdexPropCanCall             0x00000100L") | 
 | cpp_quote("#define fdexPropCannotCall          0x00000200L") | 
 | cpp_quote("#define fdexPropCanConstruct        0x00000400L") | 
 | cpp_quote("#define fdexPropCannotConstruct     0x00000800L") | 
 | cpp_quote("#define fdexPropCanSourceEvents     0x00001000L") | 
 | cpp_quote("#define fdexPropCannotSourceEvents  0x00002000L") | 
 |  | 
 | cpp_quote("#define fdexEnumDefault             0x00000001L") | 
 | cpp_quote("#define fdexEnumAll                 0x00000002L") | 
 |  | 
 | cpp_quote("#define grfdexPropCanAll \\") | 
 | cpp_quote("       (fdexPropCanGet | fdexPropCanPut | fdexPropCanPutRef | \\") | 
 | cpp_quote("        fdexPropCanCall | fdexPropCanConstruct | fdexPropCanSourceEvents)") | 
 | cpp_quote("#define grfdexPropCannotAll \\") | 
 | cpp_quote("       (fdexPropCannotGet | fdexPropCannotPut | fdexPropCannotPutRef | \\") | 
 | cpp_quote("        fdexPropCannotCall | fdexPropCannotConstruct | fdexPropCannotSourceEvents)") | 
 | cpp_quote("#define grfdexPropExtraAll \\") | 
 | cpp_quote("       (fdexPropNoSideEffects | fdexPropDynamicType)") | 
 | cpp_quote("#define grfdexPropAll \\") | 
 | cpp_quote("       (grfdexPropCanAll | grfdexPropCannotAll | grfdexPropExtraAll)") | 
 |  | 
 | cpp_quote("#define DISPATCH_CONSTRUCT 0x4000") | 
 |  | 
 | cpp_quote("#define DISPID_THIS (-613)") | 
 | cpp_quote("#define DISPID_STARTENUM DISPID_UNKNOWN") | 
 |  | 
 | [ | 
 | object, | 
 | uuid(A6EF9860-C720-11d0-9337-00A0C90DCAA9), | 
 | pointer_default(unique) | 
 | ] | 
 | interface IDispatchEx : IDispatch | 
 | { | 
 |     HRESULT GetDispID( | 
 |             [in] BSTR bstrName, | 
 |             [in] DWORD grfdex, | 
 |             [out] DISPID *pid); | 
 |  | 
 |     [local] | 
 |     HRESULT InvokeEx( | 
 |             [in] DISPID id, | 
 |             [in] LCID lcid, | 
 |             [in] WORD wFlags, | 
 |             [in] DISPPARAMS *pdp, | 
 |             [out] VARIANT *pvarRes, | 
 |             [out] EXCEPINFO *pei, | 
 |             [in, unique] IServiceProvider *pspCaller); | 
 |  | 
 |     [call_as(InvokeEx)] | 
 |     HRESULT RemoteInvokeEx( | 
 |             [in] DISPID id, | 
 |             [in] LCID lcid, | 
 |             [in] DWORD dwFlags, | 
 |             [in] DISPPARAMS *pdp, | 
 |             [out] VARIANT *pvarRes, | 
 |             [out] EXCEPINFO *pei, | 
 |             [in, unique] IServiceProvider *pspCaller, | 
 |             [in] UINT cvarRefArg, | 
 |             [in, size_is(cvarRefArg)] UINT *rgiRefArg, | 
 |             [in, out, size_is(cvarRefArg)] VARIANT *rgvarRefArg); | 
 |  | 
 |     HRESULT DeleteMemberByName( | 
 |             [in] BSTR bstrName, | 
 |             [in] DWORD grfdex); | 
 |  | 
 |     HRESULT DeleteMemberByDispID( | 
 |             [in] DISPID id); | 
 |  | 
 |     HRESULT GetMemberProperties( | 
 |             [in] DISPID id, | 
 |             [in] DWORD grfdexFetch, | 
 |             [out] DWORD *pgrfdex); | 
 |  | 
 |     HRESULT GetMemberName( | 
 |             [in] DISPID id, | 
 |             [out] BSTR *pbstrName); | 
 |  | 
 |     HRESULT GetNextDispID( | 
 |             [in] DWORD grfdex, | 
 |             [in] DISPID id, | 
 |             [out] DISPID *pid); | 
 |  | 
 |     HRESULT GetNameSpaceParent([out] IUnknown **ppunk); | 
 | } | 
 |  | 
 | [ | 
 | object, | 
 | uuid(A6EF9861-C720-11d0-9337-00A0C90DCAA9), | 
 | pointer_default(unique) | 
 | ] | 
 | interface IDispError : IUnknown | 
 | { | 
 |     HRESULT QueryErrorInfo( | 
 |             [in] GUID guidErrorType, | 
 |             [out] IDispError **ppde); | 
 |  | 
 |     HRESULT GetNext( | 
 |             [out] IDispError **ppde); | 
 |  | 
 |     HRESULT GetHresult( | 
 |             [out] HRESULT *phr); | 
 |  | 
 |     HRESULT GetSource( | 
 |             [out] BSTR *pbstrSource); | 
 |  | 
 |     HRESULT GetHelpInfo( | 
 |             [out] BSTR *pbstrFileName, | 
 |             [out] DWORD *pdwContext); | 
 |  | 
 |     HRESULT GetDescription( | 
 |             [out] BSTR *pbstrDescription); | 
 | } | 
 |  | 
 | [ | 
 | object, | 
 | uuid(A6EF9862-C720-11d0-9337-00A0C90DCAA9), | 
 | pointer_default(unique) | 
 | ] | 
 | interface IVariantChangeType : IUnknown | 
 | { | 
 |     HRESULT ChangeType( | 
 |             [in, out, unique] VARIANT *pvarDst, | 
 |             [in, unique] VARIANT *pvarSrc, | 
 |             [in] LCID lcid, | 
 |             [in] VARTYPE vtNew); | 
 | } | 
 |  | 
 |  | 
 | [ | 
 | object, | 
 | uuid(CA04B7E6-0D21-11d1-8CC5-00C04FC2B085), | 
 | pointer_default(unique) | 
 | ] | 
 | interface IObjectIdentity : IUnknown | 
 | { | 
 |     HRESULT IsEqualObject(  | 
 |             [in] IUnknown *punk); | 
 | } |