1 /*** Autogenerated by WIDL 4.12.1 from include/wbemads.idl - Do not edit ***/ 2 3 #ifdef _WIN32 4 #ifndef __REQUIRED_RPCNDR_H_VERSION__ 5 #define __REQUIRED_RPCNDR_H_VERSION__ 475 6 #endif 7 #include <rpc.h> 8 #include <rpcndr.h> 9 #endif 10 11 #ifndef COM_NO_WINDOWS_H 12 #include <windows.h> 13 #include <ole2.h> 14 #endif 15 16 #ifndef __wbemads_h__ 17 #define __wbemads_h__ 18 19 /* Forward declarations */ 20 21 #ifndef __WMIExtension_FWD_DEFINED__ 22 #define __WMIExtension_FWD_DEFINED__ 23 #ifdef __cplusplus 24 typedef class WMIExtension WMIExtension; 25 #else 26 typedef struct WMIExtension WMIExtension; 27 #endif /* defined __cplusplus */ 28 #endif /* defined __WMIExtension_FWD_DEFINED__ */ 29 30 #ifndef __IWMIExtension_FWD_DEFINED__ 31 #define __IWMIExtension_FWD_DEFINED__ 32 typedef interface IWMIExtension IWMIExtension; 33 #ifdef __cplusplus 34 interface IWMIExtension; 35 #endif /* __cplusplus */ 36 #endif 37 38 /* Headers for imported files */ 39 40 #include <oaidl.h> 41 #include <ocidl.h> 42 #include <wbemdisp.h> 43 44 #ifdef __cplusplus 45 extern "C" { 46 #endif 47 48 /** 49 * This file is part of the mingw-w64 runtime package. 50 * No warranty is given; refer to the file DISCLAIMER within this package. 51 */ 52 53 #include <winapifamily.h> 54 55 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) 56 57 DEFINE_GUID(LIBID_WMIEXTENSIONLib, 0xe503d000, 0x5c7f, 0x11d2, 0x8b,0x74, 0x00,0x10,0x4b,0x2a,0xfb,0x41); 58 59 #ifndef __IWMIExtension_FWD_DEFINED__ 60 #define __IWMIExtension_FWD_DEFINED__ 61 typedef interface IWMIExtension IWMIExtension; 62 #ifdef __cplusplus 63 interface IWMIExtension; 64 #endif /* __cplusplus */ 65 #endif 66 67 /***************************************************************************** 68 * WMIExtension coclass 69 */ 70 71 DEFINE_GUID(CLSID_WMIExtension, 0xf0975afe, 0x5c7f, 0x11d2, 0x8b,0x74, 0x00,0x10,0x4b,0x2a,0xfb,0x41); 72 73 #ifdef __cplusplus 74 class DECLSPEC_UUID("f0975afe-5c7f-11d2-8b74-00104b2afb41") WMIExtension; 75 #ifdef __CRT_UUID_DECL 76 __CRT_UUID_DECL(WMIExtension, 0xf0975afe, 0x5c7f, 0x11d2, 0x8b,0x74, 0x00,0x10,0x4b,0x2a,0xfb,0x41) 77 #endif 78 #endif 79 80 /***************************************************************************** 81 * IWMIExtension interface 82 */ 83 #ifndef __IWMIExtension_INTERFACE_DEFINED__ 84 #define __IWMIExtension_INTERFACE_DEFINED__ 85 86 DEFINE_GUID(IID_IWMIExtension, 0xadc1f06e, 0x5c7e, 0x11d2, 0x8b,0x74, 0x00,0x10,0x4b,0x2a,0xfb,0x41); 87 #if defined(__cplusplus) && !defined(CINTERFACE) 88 MIDL_INTERFACE("adc1f06e-5c7e-11d2-8b74-00104b2afb41") 89 IWMIExtension : public IDispatch 90 { 91 virtual HRESULT STDMETHODCALLTYPE get_WMIObjectPath( 92 BSTR *strWMIObjectPath) = 0; 93 94 virtual HRESULT STDMETHODCALLTYPE GetWMIObject( 95 ISWbemObject **objWMIObject) = 0; 96 97 virtual HRESULT STDMETHODCALLTYPE GetWMIServices( 98 ISWbemServices **objWMIServices) = 0; 99 100 }; 101 #ifdef __CRT_UUID_DECL 102 __CRT_UUID_DECL(IWMIExtension, 0xadc1f06e, 0x5c7e, 0x11d2, 0x8b,0x74, 0x00,0x10,0x4b,0x2a,0xfb,0x41) 103 #endif 104 #else 105 typedef struct IWMIExtensionVtbl { 106 BEGIN_INTERFACE 107 108 /*** IUnknown methods ***/ 109 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 110 IWMIExtension *This, 111 REFIID riid, 112 void **ppvObject); 113 114 ULONG (STDMETHODCALLTYPE *AddRef)( 115 IWMIExtension *This); 116 117 ULONG (STDMETHODCALLTYPE *Release)( 118 IWMIExtension *This); 119 120 /*** IDispatch methods ***/ 121 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( 122 IWMIExtension *This, 123 UINT *pctinfo); 124 125 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( 126 IWMIExtension *This, 127 UINT iTInfo, 128 LCID lcid, 129 ITypeInfo **ppTInfo); 130 131 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( 132 IWMIExtension *This, 133 REFIID riid, 134 LPOLESTR *rgszNames, 135 UINT cNames, 136 LCID lcid, 137 DISPID *rgDispId); 138 139 HRESULT (STDMETHODCALLTYPE *Invoke)( 140 IWMIExtension *This, 141 DISPID dispIdMember, 142 REFIID riid, 143 LCID lcid, 144 WORD wFlags, 145 DISPPARAMS *pDispParams, 146 VARIANT *pVarResult, 147 EXCEPINFO *pExcepInfo, 148 UINT *puArgErr); 149 150 /*** IWMIExtension methods ***/ 151 HRESULT (STDMETHODCALLTYPE *get_WMIObjectPath)( 152 IWMIExtension *This, 153 BSTR *strWMIObjectPath); 154 155 HRESULT (STDMETHODCALLTYPE *GetWMIObject)( 156 IWMIExtension *This, 157 ISWbemObject **objWMIObject); 158 159 HRESULT (STDMETHODCALLTYPE *GetWMIServices)( 160 IWMIExtension *This, 161 ISWbemServices **objWMIServices); 162 163 END_INTERFACE 164 } IWMIExtensionVtbl; 165 166 interface IWMIExtension { 167 CONST_VTBL IWMIExtensionVtbl* lpVtbl; 168 }; 169 170 #ifdef COBJMACROS 171 #ifndef WIDL_C_INLINE_WRAPPERS 172 /*** IUnknown methods ***/ 173 #define IWMIExtension_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 174 #define IWMIExtension_AddRef(This) (This)->lpVtbl->AddRef(This) 175 #define IWMIExtension_Release(This) (This)->lpVtbl->Release(This) 176 /*** IDispatch methods ***/ 177 #define IWMIExtension_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) 178 #define IWMIExtension_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) 179 #define IWMIExtension_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) 180 #define IWMIExtension_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) 181 /*** IWMIExtension methods ***/ 182 #define IWMIExtension_get_WMIObjectPath(This,strWMIObjectPath) (This)->lpVtbl->get_WMIObjectPath(This,strWMIObjectPath) 183 #define IWMIExtension_GetWMIObject(This,objWMIObject) (This)->lpVtbl->GetWMIObject(This,objWMIObject) 184 #define IWMIExtension_GetWMIServices(This,objWMIServices) (This)->lpVtbl->GetWMIServices(This,objWMIServices) 185 #else 186 /*** IUnknown methods ***/ 187 static FORCEINLINE HRESULT IWMIExtension_QueryInterface(IWMIExtension* This,REFIID riid,void **ppvObject) { 188 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 189 } 190 static FORCEINLINE ULONG IWMIExtension_AddRef(IWMIExtension* This) { 191 return This->lpVtbl->AddRef(This); 192 } 193 static FORCEINLINE ULONG IWMIExtension_Release(IWMIExtension* This) { 194 return This->lpVtbl->Release(This); 195 } 196 /*** IDispatch methods ***/ 197 static FORCEINLINE HRESULT IWMIExtension_GetTypeInfoCount(IWMIExtension* This,UINT *pctinfo) { 198 return This->lpVtbl->GetTypeInfoCount(This,pctinfo); 199 } 200 static FORCEINLINE HRESULT IWMIExtension_GetTypeInfo(IWMIExtension* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { 201 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); 202 } 203 static FORCEINLINE HRESULT IWMIExtension_GetIDsOfNames(IWMIExtension* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { 204 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); 205 } 206 static FORCEINLINE HRESULT IWMIExtension_Invoke(IWMIExtension* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { 207 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); 208 } 209 /*** IWMIExtension methods ***/ 210 static FORCEINLINE HRESULT IWMIExtension_get_WMIObjectPath(IWMIExtension* This,BSTR *strWMIObjectPath) { 211 return This->lpVtbl->get_WMIObjectPath(This,strWMIObjectPath); 212 } 213 static FORCEINLINE HRESULT IWMIExtension_GetWMIObject(IWMIExtension* This,ISWbemObject **objWMIObject) { 214 return This->lpVtbl->GetWMIObject(This,objWMIObject); 215 } 216 static FORCEINLINE HRESULT IWMIExtension_GetWMIServices(IWMIExtension* This,ISWbemServices **objWMIServices) { 217 return This->lpVtbl->GetWMIServices(This,objWMIServices); 218 } 219 #endif 220 #endif 221 222 #endif 223 224 225 #endif /* __IWMIExtension_INTERFACE_DEFINED__ */ 226 227 #endif 228 /* Begin additional prototypes for all interfaces */ 229 230 ULONG __RPC_USER BSTR_UserSize (ULONG *, ULONG, BSTR *); 231 unsigned char * __RPC_USER BSTR_UserMarshal (ULONG *, unsigned char *, BSTR *); 232 unsigned char * __RPC_USER BSTR_UserUnmarshal(ULONG *, unsigned char *, BSTR *); 233 void __RPC_USER BSTR_UserFree (ULONG *, BSTR *); 234 235 /* End additional prototypes */ 236 237 #ifdef __cplusplus 238 } 239 #endif 240 241 #endif /* __wbemads_h__ */ 242