source: Daodan/MSYS2/mingw32/i686-w64-mingw32/include/wbemprov.idl@ 1194

Last change on this file since 1194 was 1166, checked in by rossy, 3 years ago

Daodan: Replace MinGW build env with an up-to-date MSYS2 env

File size: 6.9 KB
Line 
1cpp_quote("/**")
2cpp_quote(" * This file is part of the mingw-w64 runtime package.")
3cpp_quote(" * No warranty is given; refer to the file DISCLAIMER within this package.")
4cpp_quote(" */")
5cpp_quote("")
6
7import "objidl.idl";
8import "oleidl.idl";
9import "oaidl.idl";
10import "wbemcli.idl";
11
12cpp_quote("#include <winapifamily.h>")
13cpp_quote("")
14cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)")
15
16typedef VARIANT WBEM_VARIANT;
17typedef [string] LPWSTR WBEM_WSTR;
18typedef [string] LPCWSTR WBEM_CWSTR;
19
20typedef [v1_enum] enum tag_WBEM_PROVIDER_REQUIREMENTS_TYPE {
21 WBEM_REQUIREMENTS_START_POSTFILTER = 0,
22 WBEM_REQUIREMENTS_STOP_POSTFILTER = 1,
23 WBEM_REQUIREMENTS_RECHECK_SUBSCRIPTIONS = 2
24} WBEM_PROVIDER_REQUIREMENTS_TYPE;
25
26interface IWbemPropertyProvider;
27interface IWbemUnboundObjectSink;
28interface IWbemEventProvider;
29interface IWbemEventProviderQuerySink;
30interface IWbemEventProviderSecurity;
31interface IWbemEventConsumerProvider;
32interface IWbemProviderInitSink;
33interface IWbemProviderInit;
34interface IWbemHiPerfProvider;
35interface IWbemDecoupledRegistrar;
36
37[uuid (092df710-7010-11d1-ad90-00c04fd8fdff)]
38library WbemProviders_v1 {
39 [uuid (cb8555cc-9128-11d1-ad9b-00c04fd8fdff)]
40 coclass WbemAdministrativeLocator {
41 interface IWbemLocator;
42 };
43
44 [uuid (cd184336-9128-11d1-ad9b-00c04fd8fdff)]
45 coclass WbemAuthenticatedLocator {
46 interface IWbemLocator;
47 };
48
49 [uuid (443e7b79-DE31-11d2-B340-00104bcc4b4a)]
50 coclass WbemUnauthenticatedLocator {
51 interface IWbemLocator;
52 };
53
54 [uuid (4cfc7932-0f9d-4bef-9c32-8ea2a6b56fcb)]
55 coclass WbemDecoupledRegistrar {
56 interface IWbemDecoupledRegistrar;
57 };
58
59 [uuid (f5f75737-2843-4f22-933d-c76a97cda62f)]
60 coclass WbemDecoupledBasicEventProvider {
61 interface IWbemDecoupledBasicEventProvider;
62 };
63};
64
65typedef [v1_enum] enum tag_WBEM_BATCH_TYPE {
66 WBEM_FLAG_BATCH_IF_NEEDED = 0,
67 WBEM_FLAG_MUST_BATCH = 0x1,
68 WBEM_FLAG_MUST_NOT_BATCH = 0x2
69} WBEM_BATCH_TYPE;
70
71typedef enum tag_WBEM_PROVIDER_FLAGS {
72 WBEM_FLAG_OWNER_UPDATE = 0x10000
73} WBEM_PROVIDER_FLAGS;
74
75typedef enum tag_WBEM_EXTRA_RETURN_CODES {
76 WBEM_S_INITIALIZED = 0,
77 WBEM_S_LIMITED_SERVICE = 0x43001,
78 WBEM_S_INDIRECTLY_UPDATED,
79 WBEM_S_SUBJECT_TO_SDS,
80 WBEM_E_RETRY_LATER = 0x80043001,
81 WBEM_E_RESOURCE_CONTENTION
82} WBEM_EXTRA_RETURN_CODES;
83
84[object, restricted, uuid (e246107b-b06e-11d0-ad61-00c04fd8fdff)]
85interface IWbemUnboundObjectSink : IUnknown {
86 HRESULT IndicateToConsumer ([in] IWbemClassObject *pLogicalConsumer,[in] long lNumObjects,[in, size_is (lNumObjects)] IWbemClassObject **apObjects);
87};
88
89[object, restricted, uuid (ce61e841-65bc-11d0-b6bd-00aa003240c7)]
90interface IWbemPropertyProvider : IUnknown {
91 HRESULT GetProperty ([in] long lFlags,[in] const BSTR strLocale,[in] const BSTR strClassMapping,[in] const BSTR strInstMapping,[in] const BSTR strPropMapping,[out] VARIANT *pvValue);
92 HRESULT PutProperty ([in] long lFlags,[in] const BSTR strLocale,[in] const BSTR strClassMapping,[in] const BSTR strInstMapping,[in] const BSTR strPropMapping,[in] const VARIANT *pvValue);
93};
94
95[object, restricted, uuid (e245105b-b06e-11d0-ad61-00c04fd8fdff)]
96interface IWbemEventProvider : IUnknown {
97 HRESULT ProvideEvents ([in] IWbemObjectSink *pSink,[in] long lFlags);
98};
99
100[object, restricted, uuid (580acaf8-fa1c-11d0-ad72-00c04fd8fdff)]
101interface IWbemEventProviderQuerySink : IUnknown {
102 HRESULT NewQuery ([in] unsigned long dwId,[in] WBEM_WSTR wszQueryLanguage,[in] WBEM_WSTR wszQuery);
103 HRESULT CancelQuery ([in] unsigned long dwId);
104};
105
106[object, restricted, uuid (631f7d96-d993-11d2-b339-00105a1f4aaf)]
107interface IWbemEventProviderSecurity : IUnknown {
108 HRESULT AccessCheck ([in] WBEM_CWSTR wszQueryLanguage,[in] WBEM_CWSTR wszQuery,[in] long lSidLength,[in, size_is (lSidLength), unique] const BYTE *pSid);
109};
110
111[object, restricted, uuid (631f7d97-d993-11d2-b339-00105a1f4aaf)]
112interface IWbemProviderIdentity : IUnknown {
113 HRESULT SetRegistrationObject ([in] long lFlags,[in] IWbemClassObject *pProvReg);
114};
115
116[object, restricted, uuid (e246107a-b06e-11d0-ad61-00c04fd8fdff)]
117interface IWbemEventConsumerProvider : IUnknown {
118 HRESULT FindConsumer ([in] IWbemClassObject *pLogicalConsumer,[out] IWbemUnboundObjectSink **ppConsumer);
119};
120
121[object, uuid (1be41571-91dd-11d1-aeb2-00c04fb68820)]
122interface IWbemProviderInitSink : IUnknown {
123 HRESULT SetStatus ([in] LONG lStatus,[in] LONG lFlags);
124};
125
126[object, uuid (1be41572-91dd-11d1-aeb2-00c04fb68820)]
127interface IWbemProviderInit : IUnknown {
128 HRESULT Initialize ([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);
129};
130
131[object, local, restricted, uuid (49353c93-516b-11d1-aea6-00c04fb68820)]
132interface IWbemHiPerfProvider : IUnknown {
133 HRESULT QueryInstances ([in] IWbemServices *pNamespace,[in, string] WCHAR *wszClass,[in] long lFlags,[in] IWbemContext *pCtx,[in] IWbemObjectSink *pSink);
134 HRESULT CreateRefresher ([in] IWbemServices *pNamespace,[in] long lFlags,[out] IWbemRefresher **ppRefresher);
135 HRESULT CreateRefreshableObject ([in] IWbemServices *pNamespace,[in] IWbemObjectAccess *pTemplate,[in] IWbemRefresher *pRefresher,[in] long lFlags,[in] IWbemContext *pContext,[out] IWbemObjectAccess **ppRefreshable,[out] long *plId);
136 HRESULT StopRefreshing ([in] IWbemRefresher *pRefresher,[in] long lId,[in] long lFlags);
137 HRESULT CreateRefreshableEnum ([in] IWbemServices *pNamespace,[in, string] LPCWSTR wszClass,[in] IWbemRefresher *pRefresher,[in] long lFlags,[in] IWbemContext *pContext,[in] IWbemHiPerfEnum *pHiPerfEnum,[out] long *plId);
138 HRESULT GetObjects ([in] IWbemServices *pNamespace,[in] long lNumObjects,[in, out, size_is (lNumObjects)] IWbemObjectAccess **apObj,[in] long lFlags,[in] IWbemContext *pContext);
139};
140
141[object, local, uuid (1005cbcf-e64f-4646-bcd3-3a089d8a84b4)]
142interface IWbemDecoupledRegistrar : IUnknown {
143 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 *pIUnknown);
144 HRESULT UnRegister ();
145};
146
147[object, local, uuid (86336d20-ca11-4786-9ef1-bc8a946b42fc)]
148interface IWbemDecoupledBasicEventProvider : IWbemDecoupledRegistrar {
149 HRESULT GetSink ([in] long a_Flags,[in] IWbemContext *a_Context,[out] IWbemObjectSink **a_Sink);
150 HRESULT GetService ([in] long a_Flags,[in] IWbemContext *a_Context,[out] IWbemServices **a_Service);
151};
152
153[object, restricted, uuid (3ae0080a-7e3a-4366-bf89-0feedc931659)]
154interface IWbemEventSink : IWbemObjectSink {
155 HRESULT SetSinkSecurity ([in] long lSDLength,[in, size_is (lSDLength)] BYTE *pSD);
156 HRESULT IsActive ();
157 HRESULT GetRestrictedSink ([in] long lNumQueries,[in, size_is (lNumQueries), string] const LPCWSTR *awszQueries,[in] IUnknown *pCallback,[out] IWbemEventSink **ppSink);
158 HRESULT SetBatchingParameters ([in] LONG lFlags,[in] DWORD dwMaxBufferSize,[in] DWORD dwMaxSendLatency);
159};
160
161cpp_quote("#endif")
Note: See TracBrowser for help on using the repository browser.