|
|
cpp_quote("/*******************************************************************************/" ) cpp_quote("/* */" ) cpp_quote("/* Copyright � Microsoft Corporation. All rights reserved. */" ) cpp_quote("/* */" ) cpp_quote("/*******************************************************************************/" )
import "objidl.idl"; import "oleidl.idl"; import "oaidl.idl"; import "wbemcli.idl"; import "wmiutils.idl";
// this is used by providers that do not wish to be instantiated // by winmgmt, rather the provider registers it's participation // in servicing client requests as and when desired. This is // primarily used by providers that act on the part of application // hosts and that export management information only when they are activated // via some application scenario.
[uuid(4cfc7932-0f9d-4bef-9c32-8ea2a6b56fcb)] coclass WbemDecoupledRegistrar { interface IWbemDecoupledRegistrar ; };
[uuid(f5f75737-2843-4f22-933d-c76a97cda62f)] coclass WbemDecoupledBasicEventProvider { interface IWbemDecoupledBasicEventProvider ; };
[object, local, uuid(1005cbcf-e64f-4646-bcd3-3a089d8a84b4)] interface IWbemDecoupledRegistrar : IUnknown { HRESULT Register (
[in] long a_Flags , [in] IWbemContext *a_Context , [in] LPCWSTR a_User , [in] LPCWSTR a_Locale , [in] LPCWSTR a_Scope , [in] LPCWSTR a_Registration , [in] IUnknown *a_Unknown ) ;
HRESULT UnRegister () ; } ;
[object, local, uuid(86336d20-ca11-4786-9ef1-bc8a946b42fc)] interface IWbemDecoupledBasicEventProvider : IWbemDecoupledRegistrar { HRESULT GetSink (
[in] long a_Flags , [in] IWbemContext *a_Context , [out] IWbemObjectSink **a_Sink ) ;
HRESULT GetService (
[in] long a_Flags , [in] IWbemContext *a_Context , [out] IWbemServices **a_Service ) ;
} ;
typedef VARIANT WBEM_VARIANT; typedef [string] WCHAR* WBEM_WSTR; typedef [string] const WCHAR* WBEM_CWSTR;
#define OPTIONAL in, unique
typedef struct _tag_WmiInternalContext { unsigned __int64 m_IdentifyHandle ; unsigned long m_ProcessIdentifier ;
} WmiInternalContext ;
[object, uuid(1be41571-91dd-11d1-aeb2-00c04fb68820)]
interface IWbemProviderInitSink : IUnknown { HRESULT SetStatus( [in] LONG lStatus, [in] LONG lFlags ); }; [restricted, object, uuid(e246107b-b06e-11d0-ad61-00c04fd8fdff)] interface IWbemUnboundObjectSink : IUnknown { HRESULT IndicateToConsumer( [in] IWbemClassObject* pLogicalConsumer, [in] long lNumObjects, [in, size_is(lNumObjects)] IWbemClassObject** apObjects); };
[object,uuid(41aa40e6-2fba-4e80-ade9-34306567206d)] interface _IWmiProviderSubsystemRegistrar : IUnknown { HRESULT Register (
[in] long a_Flags , [in] IWbemContext *a_Context , [in,unique] LPCWSTR a_User , [in,unique] LPCWSTR a_Locale , [in] LPCWSTR a_Scope , [in] LPCWSTR a_Registration , [in] DWORD a_ProcessIdentifier , [in] IUnknown *a_Unknown , [in] GUID a_Identity ) ;
HRESULT UnRegister (
[in] long a_Flags , [in] IWbemContext *a_Context , [in,unique] LPCWSTR a_User , [in,unique] LPCWSTR a_Locale , [in] LPCWSTR a_Scope , [in] LPCWSTR a_Registration , [in] GUID a_Identity ) ; } ;
[object, uuid(6919dd07-1637-4611-a8a7-c16fac5b2d53)] interface Internal_IWbemProviderInit : IUnknown { HRESULT Internal_Initialize (
[in] WmiInternalContext a_InternalContext , [in, unique, string] LPWSTR wszUser, [in] LONG lFlags, [in, string] LPWSTR wszNamespace, [in, unique, string] LPWSTR wszLocale, [in] IWbemServices* pNamespace, [in] IWbemContext* pCtx, [in] IWbemProviderInitSink* pInitSink ) ; };
[restricted, object, uuid(2b322b6e-a9df-44e3-97bf-259e3583fda4)] interface Internal_IWbemProviderIdentity : IUnknown { HRESULT Internal_SetRegistrationObject(
[in] WmiInternalContext a_InternalContext , [in] long lFlags, [in] IWbemClassObject* pProvReg); };
[object, uuid(f50a28cf-5c9c-4f7e-9d80-e25e16e18c59)] interface Internal_IWbemServices : IUnknown { // Context. // ======== HRESULT Internal_OpenNamespace (
[in] WmiInternalContext a_InternalContext , [in] const BSTR strNamespace, [in] long lFlags, [in] IWbemContext* pCtx, [out, OPTIONAL] IWbemServices** ppWorkingNamespace, [out, OPTIONAL] IWbemCallResult** ppResult );
HRESULT Internal_CancelAsyncCall(
[in] WmiInternalContext a_InternalContext , [in] IWbemObjectSink* pSink );
HRESULT Internal_QueryObjectSink(
[in] WmiInternalContext a_InternalContext , [in] long lFlags, [out] IWbemObjectSink** ppResponseHandler );
// Classes and instances. // ======================
HRESULT Internal_GetObject(
[in] WmiInternalContext a_InternalContext , [in] const BSTR strObjectPath, [in] long lFlags, [in] IWbemContext* pCtx, [out, OPTIONAL] IWbemClassObject** ppObject, [out, OPTIONAL] IWbemCallResult** ppCallResult );
HRESULT Internal_GetObjectAsync(
[in] WmiInternalContext a_InternalContext , [in] const BSTR strObjectPath, [in] long lFlags, [in] IWbemContext* pCtx, [in] IWbemObjectSink* pResponseHandler );
// Class manipulation. // ===================
HRESULT Internal_PutClass(
[in] WmiInternalContext a_InternalContext , [in] IWbemClassObject* pObject, [in] long lFlags, [in] IWbemContext* pCtx, [out, OPTIONAL] IWbemCallResult** ppCallResult );
HRESULT Internal_PutClassAsync(
[in] WmiInternalContext a_InternalContext , [in] IWbemClassObject* pObject, [in] long lFlags, [in] IWbemContext* pCtx, [in] IWbemObjectSink* pResponseHandler );
HRESULT Internal_DeleteClass(
[in] WmiInternalContext a_InternalContext , [in] const BSTR strClass, [in] long lFlags, [in] IWbemContext* pCtx, [out, OPTIONAL] IWbemCallResult** ppCallResult );
HRESULT Internal_DeleteClassAsync(
[in] WmiInternalContext a_InternalContext , [in] const BSTR strClass, [in] long lFlags, [in] IWbemContext* pCtx, [in] IWbemObjectSink* pResponseHandler );
HRESULT Internal_CreateClassEnum(
[in] WmiInternalContext a_InternalContext , [in] const BSTR strSuperclass, [in] long lFlags, [in] IWbemContext* pCtx, [out] IEnumWbemClassObject** ppEnum );
HRESULT Internal_CreateClassEnumAsync(
[in] WmiInternalContext a_InternalContext , [in] const BSTR strSuperclass, [in] long lFlags, [in] IWbemContext* pCtx, [in] IWbemObjectSink* pResponseHandler );
// Instances. // ==========
HRESULT Internal_PutInstance(
[in] WmiInternalContext a_InternalContext , [in] IWbemClassObject* pInst, [in] long lFlags, [in] IWbemContext* pCtx, [out, OPTIONAL] IWbemCallResult** ppCallResult );
HRESULT Internal_PutInstanceAsync(
[in] WmiInternalContext a_InternalContext , [in] IWbemClassObject* pInst, [in] long lFlags, [in] IWbemContext* pCtx, [in] IWbemObjectSink* pResponseHandler );
HRESULT Internal_DeleteInstance(
[in] WmiInternalContext a_InternalContext , [in] const BSTR strObjectPath, [in] long lFlags, [in] IWbemContext* pCtx, [out, OPTIONAL] IWbemCallResult** ppCallResult );
HRESULT Internal_DeleteInstanceAsync(
[in] WmiInternalContext a_InternalContext , [in] const BSTR strObjectPath, [in] long lFlags, [in] IWbemContext* pCtx, [in] IWbemObjectSink* pResponseHandler );
HRESULT Internal_CreateInstanceEnum(
[in] WmiInternalContext a_InternalContext , [in] const BSTR strFilter, // allow more things than a class name [in] long lFlags, [in] IWbemContext* pCtx, [out] IEnumWbemClassObject** ppEnum );
HRESULT Internal_CreateInstanceEnumAsync(
[in] WmiInternalContext a_InternalContext , [in] const BSTR strFilter, // allow more things than a class name [in] long lFlags, [in] IWbemContext* pCtx, [in] IWbemObjectSink* pResponseHandler );
// Queries. // ========
HRESULT Internal_ExecQuery(
[in] WmiInternalContext a_InternalContext , [in] const BSTR strQueryLanguage, [in] const BSTR strQuery, [in] long lFlags, [in] IWbemContext* pCtx, [out] IEnumWbemClassObject** ppEnum );
HRESULT Internal_ExecQueryAsync(
[in] WmiInternalContext a_InternalContext , [in] const BSTR strQueryLanguage, [in] const BSTR strQuery, [in] long lFlags, [in] IWbemContext* pCtx, [in] IWbemObjectSink* pResponseHandler );
HRESULT Internal_ExecNotificationQuery(
[in] WmiInternalContext a_InternalContext , [in] const BSTR strQueryLanguage, [in] const BSTR strQuery, [in] long lFlags, [in] IWbemContext* pCtx, [out] IEnumWbemClassObject** ppEnum );
HRESULT Internal_ExecNotificationQueryAsync(
[in] WmiInternalContext a_InternalContext , [in] const BSTR strQueryLanguage, [in] const BSTR strQuery, [in] long lFlags, [in] IWbemContext* pCtx, [in] IWbemObjectSink* pResponseHandler );
// Methods // =======
HRESULT Internal_ExecMethod(
[in] WmiInternalContext a_InternalContext , [in] const BSTR strObjectPath, [in] const BSTR strMethodName, [in] long lFlags, [in] IWbemContext* pCtx, [in] IWbemClassObject* pInParams, [out, OPTIONAL] IWbemClassObject** ppOutParams, [out, OPTIONAL] IWbemCallResult** ppCallResult );
HRESULT Internal_ExecMethodAsync(
[in] WmiInternalContext a_InternalContext , [in] const BSTR strObjectPath, [in] const BSTR strMethodName, [in] long lFlags, [in] IWbemContext* pCtx, [in] IWbemClassObject* pInParams, [in] IWbemObjectSink* pResponseHandler ); };
//***************************************************************************
//***************************************************************************
[object,uuid(2db9fa90-9973-46cf-b310-9865b644699d)] interface Internal_IWbemObjectSink : IUnknown { HRESULT Internal_Indicate(
[in] WmiInternalContext a_InternalContext , [in] long lObjectCount, [in, size_is(lObjectCount)] IWbemClassObject** apObjArray );
HRESULT Internal_SetStatus(
[in] WmiInternalContext a_InternalContext , [in] long lFlags, [in] HRESULT hResult, [in] BSTR strParam, [in] IWbemClassObject* pObjParam );
};
//***************************************************************************
//***************************************************************************
[object,uuid(ac9ea02a-2c8a-4acd-b562-d7e8ebee8e8e)] interface Internal_IEnumWbemClassObject : IUnknown { HRESULT Internal_Reset( [in] WmiInternalContext a_InternalContext );
HRESULT Internal_Next(
[in] WmiInternalContext a_InternalContext , [in] long lTimeout, [in] ULONG uCount, [out, size_is(uCount), length_is(*puReturned)] IWbemClassObject** apObjects, [out] ULONG* puReturned );
HRESULT Internal_NextAsync(
[in] WmiInternalContext a_InternalContext , [in] ULONG uCount, [in] IWbemObjectSink* pSink );
HRESULT Internal_Clone(
[in] WmiInternalContext a_InternalContext , [out] IEnumWbemClassObject** ppEnum );
HRESULT Internal_Skip(
[in] WmiInternalContext a_InternalContext , [in] long lTimeout, [in] ULONG nCount ); };
//***************************************************************************
//***************************************************************************
[object,uuid(11caa957-4e80-474e-a819-7fd72148ada9)] interface Internal_IWbemPropertyProvider : IUnknown { HRESULT Internal_GetProperty(
[in] WmiInternalContext a_InternalContext , [in] long lFlags, [in] const BSTR strLocale, [in] const BSTR strClassMapping, [in] const BSTR strInstMapping, [in] const BSTR strPropMapping, [out] VARIANT* pvValue ); HRESULT Internal_PutProperty(
[in] WmiInternalContext a_InternalContext , [in] long lFlags, [in] const BSTR strLocale, [in] const BSTR strClassMapping, [in] const BSTR strInstMapping, [in] const BSTR strPropMapping, [in] const VARIANT* pvValue ); };
//***************************************************************************
//***************************************************************************
[object,uuid(fd450835-cf1b-4c87-9fd2-5e0d42fde081)] interface Internal_IWbemEventProvider : IUnknown { HRESULT Internal_ProvideEvents(
[in] WmiInternalContext a_InternalContext , [in] IWbemObjectSink* pSink, [in] long lFlags ); };
//***************************************************************************
//***************************************************************************
[object,uuid(df2373f5-efb2-475c-ad58-3102d61967d4)] interface Internal_IWbemEventProviderSecurity : IUnknown { HRESULT Internal_AccessCheck(
[in] WmiInternalContext a_InternalContext , [in] WBEM_CWSTR wszQueryLanguage, [in] WBEM_CWSTR wszQuery, [in] long lSidLength, [in, size_is(lSidLength), unique] const BYTE* pSid ); };
//***************************************************************************
//***************************************************************************
[object,uuid(854d745c-6742-42c0-8bb9-01ec466b6e87)] interface Internal_IWbemEventConsumerProvider : IUnknown { HRESULT Internal_FindConsumer(
[in] WmiInternalContext a_InternalContext , [in] IWbemClassObject* pLogicalConsumer, [out] IWbemUnboundObjectSink** ppConsumer ); };
//***************************************************************************
//***************************************************************************
[object,uuid(88f3781c-6902-4647-9a6b-a74f450af861)] interface Internal_IWbemEventConsumerProviderEx : Internal_IWbemEventConsumerProvider { HRESULT Internal_ValidateSubscription(
[in] WmiInternalContext a_InternalContext , [in] IWbemClassObject* pLogicalConsumer ); };
//***************************************************************************
//***************************************************************************
[object,uuid(8a0dc377-a9d3-41cb-bd69-ae1fdaf2dc68)] interface Internal_IWbemEventProviderQuerySink : IUnknown { HRESULT Internal_NewQuery(
[in] WmiInternalContext a_InternalContext , [in] unsigned long dwId, [in] WBEM_WSTR wszQueryLanguage, [in] WBEM_WSTR wszQuery );
HRESULT Internal_CancelQuery(
[in] WmiInternalContext a_InternalContext , [in] unsigned long dwId ); };
//***************************************************************************
//***************************************************************************
[object,uuid(a210bfe9-c9f7-4919-b114-0d98b3d5341e)] interface Internal_IWbemUnboundObjectSink : IUnknown { HRESULT Internal_IndicateToConsumer(
[in] WmiInternalContext a_InternalContext , [in] IWbemClassObject* pLogicalConsumer, [in] long lNumObjects, [in, size_is(lNumObjects)] IWbemClassObject** apObjects ); };
[object,uuid(fec1b0ac-5808-4033-a915-c0185934581e)] interface _IWmiProviderSite : IUnknown { HRESULT GetSite ( [out] DWORD *a_ProcessIdentifier ) ;
HRESULT SetContainer ( [in,unique] IUnknown *a_Container ) ; } ;
|