ReactOS  0.4.15-dev-1632-g4e289ce
wdfwmi.h
Go to the documentation of this file.
1 /*++
2 
3 Copyright (c) Microsoft Corporation. All rights reserved.
4 
5 _WdfVersionBuild_
6 
7 Module Name:
8 
9  WdfWMI.h
10 
11 Abstract:
12 
13  This is the C interface for WMI support
14 
15 Environment:
16 
17  kernel mode only
18 
19 Revision History:
20 
21 --*/
22 
23 //
24 // NOTE: This header is generated by stubwork. Please make any
25 // modifications to the corresponding template files
26 // (.x or .y) and use stubwork to regenerate the header
27 //
28 
29 #ifndef _WDFWMI_H_
30 #define _WDFWMI_H_
31 
32 #ifndef WDF_EXTERN_C
33  #ifdef __cplusplus
34  #define WDF_EXTERN_C extern "C"
35  #define WDF_EXTERN_C_START extern "C" {
36  #define WDF_EXTERN_C_END }
37  #else
38  #define WDF_EXTERN_C
39  #define WDF_EXTERN_C_START
40  #define WDF_EXTERN_C_END
41  #endif
42 #endif
43 
45 
46 
47 
48 #if (NTDDI_VERSION >= NTDDI_WIN2K)
49 
55 
56 //
57 // WdfWmiProviderExpensive:
58 // The provider's operations are expensive in terms of resources
59 //
60 // WdfWmiProviderReadOnly:
61 // The provider is read only. No set or set data item callbacks will be
62 // made on all instances of this provider.
63 //
64 // WdfWmiProviderEventOnly:
65 // Data item is being used to fire events only. It will not receive any
66 // callbacks on it to get / set / execute buffers.
67 //
74 
75 
76 
77 typedef
78 _Function_class_(EVT_WDF_WMI_INSTANCE_QUERY_INSTANCE)
82 STDCALL
83 EVT_WDF_WMI_INSTANCE_QUERY_INSTANCE(
84  _In_
85  WDFWMIINSTANCE WmiInstance,
86  _In_
90  _Out_
92  );
93 
94 typedef EVT_WDF_WMI_INSTANCE_QUERY_INSTANCE *PFN_WDF_WMI_INSTANCE_QUERY_INSTANCE;
95 
96 typedef
97 _Function_class_(EVT_WDF_WMI_INSTANCE_SET_INSTANCE)
100 NTSTATUS
101 STDCALL
102 EVT_WDF_WMI_INSTANCE_SET_INSTANCE(
103  _In_
104  WDFWMIINSTANCE WmiInstance,
105  _In_
108  PVOID InBuffer
109  );
110 
111 typedef EVT_WDF_WMI_INSTANCE_SET_INSTANCE *PFN_WDF_WMI_INSTANCE_SET_INSTANCE;
112 
113 typedef
114 _Function_class_(EVT_WDF_WMI_INSTANCE_SET_ITEM)
117 NTSTATUS
118 STDCALL
119 EVT_WDF_WMI_INSTANCE_SET_ITEM(
120  _In_
121  WDFWMIINSTANCE WmiInstance,
122  _In_
124  _In_
127  PVOID InBuffer
128  );
129 
130 typedef EVT_WDF_WMI_INSTANCE_SET_ITEM *PFN_WDF_WMI_INSTANCE_SET_ITEM;
131 
132 typedef
133 _Function_class_(EVT_WDF_WMI_INSTANCE_EXECUTE_METHOD)
136 NTSTATUS
137 STDCALL
138 EVT_WDF_WMI_INSTANCE_EXECUTE_METHOD(
139  _In_
140  WDFWMIINSTANCE WmiInstance,
141  _In_
143  _In_
145  _In_
149  PVOID Buffer,
150  _Out_
152  );
153 
154 typedef EVT_WDF_WMI_INSTANCE_EXECUTE_METHOD *PFN_WDF_WMI_INSTANCE_EXECUTE_METHOD;
155 
156 typedef
157 _Function_class_(EVT_WDF_WMI_PROVIDER_FUNCTION_CONTROL)
160 NTSTATUS
161 STDCALL
162 EVT_WDF_WMI_PROVIDER_FUNCTION_CONTROL(
163  _In_
164  WDFWMIPROVIDER WmiProvider,
165  _In_
167  _In_
169  );
170 
171 typedef EVT_WDF_WMI_PROVIDER_FUNCTION_CONTROL *PFN_WDF_WMI_PROVIDER_FUNCTION_CONTROL;
172 
173 typedef struct _WDF_WMI_PROVIDER_CONFIG {
174  //
175  // Size of this structure in bytes
176  //
178 
179  //
180  // The GUID being registered
181  //
183 
184  //
185  // Combination of values from the enum WDF_WMI_PROVIDER_FLAGS
186  //
188 
189  //
190  // Minimum expected buffer size for query and set instance requests.
191  // Ignored if WdfWmiProviderEventOnly is set in Flags.
192  //
194 
195  //
196  // Callback when caller is opening a provider which ha been marked as
197  // expensive or when a caller is interested in events.
198  //
200 
202 
204 VOID
208  )
209 {
211 
212  Config->Size = sizeof(WDF_WMI_PROVIDER_CONFIG);
213  RtlCopyMemory(&Config->Guid, Guid, sizeof(GUID));
214 }
215 
216 typedef struct _WDF_WMI_INSTANCE_CONFIG {
217  //
218  // Size of the structure in bytes
219  //
221 
222  //
223  // Optional parameter. If NULL, ProviderConfig must be set to a valid pointer
224  // value. If specified, indicates the provider to create an instance for.
225  //
226  WDFWMIPROVIDER Provider;
227 
228  //
229  // Optional parameter. If NULL, Provider must be set to a valid handle
230  // value. If specifeid, indicates the configuration for a provider to be
231  // created and for this instance to be associated with.
232  //
234 
235  //
236  // If the Provider is configured as read only and this field is set to TRUE,
237  // the EvtWmiInstanceQueryInstance is ignored and WDF will blindly copy the
238  // context associated with this instance (using RtlCopyMemory, with no locks
239  // held) into the query buffer.
240  //
242 
243  //
244  // If TRUE, the instance will be registered as well as created.
245  //
247 
248  //
249  // Callback when caller wants to query the entire data item's buffer.
250  //
252 
253  //
254  // Callback when caller wants to set the entire data item's buffer.
255  //
257 
258  //
259  // Callback when caller wants to set a single field in the data item's buffer
260  //
262 
263  //
264  // Callback when caller wants to execute a method on the data item.
265  //
267 
269 
270 
272 VOID
275  _In_ WDFWMIPROVIDER Provider
276  )
277 {
279  Config->Size = sizeof(WDF_WMI_INSTANCE_CONFIG);
280 
281  Config->Provider = Provider;
282 }
283 
285 VOID
288  _In_ PWDF_WMI_PROVIDER_CONFIG ProviderConfig
289  )
290 {
292  Config->Size = sizeof(WDF_WMI_INSTANCE_CONFIG);
293 
294  Config->ProviderConfig = ProviderConfig;
295 }
296 
298 NTSTATUS
304  )
305 {
306  //
307  // Compute the length of buffer we need to use. Upon error the caller can
308  // use this length to report the required length. On success, the caller
309  // can use this length to know how many bytes were written.
310  //
311  *RequiredSize = String->Length + sizeof(USHORT);
312 
313  //
314  // UNICODE_STRING.Length is the length of the string in bytes, not characters
315  //
316 
317  // First check to see if there is enough space
318  // 1) to store the length of the string
319  // 2) to store the string itself
320  //
321  if (BufferLength < (String->Length + sizeof(USHORT))) {
322  //
323  // Not enough room in the string, report back how big a buffer is
324  // required.
325  //
327  }
328 
329  //
330  // Store the length of the string
331  //
332  *(USHORT *) Buffer = String->Length;
333 
334  //
335  // Copy the string to the buffer
336  //
338  String->Buffer,
339  String->Length);
340 
341  return STATUS_SUCCESS;
342 }
343 
344 //
345 // WDF Function: WdfWmiProviderCreate
346 //
347 typedef
350 WDFAPI
351 NTSTATUS
352 (STDCALL *PFN_WDFWMIPROVIDERCREATE)(
353  _In_
355  _In_
356  WDFDEVICE Device,
357  _In_
359  _In_opt_
361  _Out_
362  WDFWMIPROVIDER* WmiProvider
363  );
364 
368 NTSTATUS
369 WdfWmiProviderCreate(
370  _In_
371  WDFDEVICE Device,
372  _In_
374  _In_opt_
376  _Out_
377  WDFWMIPROVIDER* WmiProvider
378  )
379 {
381 }
382 
383 //
384 // WDF Function: WdfWmiProviderGetDevice
385 //
386 typedef
388 WDFAPI
389 WDFDEVICE
390 (STDCALL *PFN_WDFWMIPROVIDERGETDEVICE)(
391  _In_
393  _In_
394  WDFWMIPROVIDER WmiProvider
395  );
396 
399 WDFDEVICE
400 WdfWmiProviderGetDevice(
401  _In_
402  WDFWMIPROVIDER WmiProvider
403  )
404 {
405  return ((PFN_WDFWMIPROVIDERGETDEVICE) WdfFunctions[WdfWmiProviderGetDeviceTableIndex])(WdfDriverGlobals, WmiProvider);
406 }
407 
408 //
409 // WDF Function: WdfWmiProviderIsEnabled
410 //
411 typedef
413 WDFAPI
414 BOOLEAN
415 (STDCALL *PFN_WDFWMIPROVIDERISENABLED)(
416  _In_
418  _In_
419  WDFWMIPROVIDER WmiProvider,
420  _In_
422  );
423 
426 BOOLEAN
427 WdfWmiProviderIsEnabled(
428  _In_
429  WDFWMIPROVIDER WmiProvider,
430  _In_
432  )
433 {
435 }
436 
437 //
438 // WDF Function: WdfWmiProviderGetTracingHandle
439 //
440 typedef
442 WDFAPI
443 ULONGLONG
444 (STDCALL *PFN_WDFWMIPROVIDERGETTRACINGHANDLE)(
445  _In_
447  _In_
448  WDFWMIPROVIDER WmiProvider
449  );
450 
453 ULONGLONG
454 WdfWmiProviderGetTracingHandle(
455  _In_
456  WDFWMIPROVIDER WmiProvider
457  )
458 {
459  return ((PFN_WDFWMIPROVIDERGETTRACINGHANDLE) WdfFunctions[WdfWmiProviderGetTracingHandleTableIndex])(WdfDriverGlobals, WmiProvider);
460 }
461 
462 //
463 // WDF Function: WdfWmiInstanceCreate
464 //
465 typedef
468 WDFAPI
469 NTSTATUS
470 (STDCALL *PFN_WDFWMIINSTANCECREATE)(
471  _In_
473  _In_
474  WDFDEVICE Device,
475  _In_
477  _In_opt_
479  _Out_opt_
480  WDFWMIINSTANCE* Instance
481  );
482 
486 NTSTATUS
487 WdfWmiInstanceCreate(
488  _In_
489  WDFDEVICE Device,
490  _In_
492  _In_opt_
494  _Out_opt_
495  WDFWMIINSTANCE* Instance
496  )
497 {
499 }
500 
501 //
502 // WDF Function: WdfWmiInstanceRegister
503 //
504 typedef
507 WDFAPI
508 NTSTATUS
509 (STDCALL *PFN_WDFWMIINSTANCEREGISTER)(
510  _In_
512  _In_
513  WDFWMIINSTANCE WmiInstance
514  );
515 
519 NTSTATUS
520 WdfWmiInstanceRegister(
521  _In_
522  WDFWMIINSTANCE WmiInstance
523  )
524 {
525  return ((PFN_WDFWMIINSTANCEREGISTER) WdfFunctions[WdfWmiInstanceRegisterTableIndex])(WdfDriverGlobals, WmiInstance);
526 }
527 
528 //
529 // WDF Function: WdfWmiInstanceDeregister
530 //
531 typedef
533 WDFAPI
534 VOID
535 (STDCALL *PFN_WDFWMIINSTANCEDEREGISTER)(
536  _In_
538  _In_
539  WDFWMIINSTANCE WmiInstance
540  );
541 
544 VOID
545 WdfWmiInstanceDeregister(
546  _In_
547  WDFWMIINSTANCE WmiInstance
548  )
549 {
551 }
552 
553 //
554 // WDF Function: WdfWmiInstanceGetDevice
555 //
556 typedef
558 WDFAPI
559 WDFDEVICE
560 (STDCALL *PFN_WDFWMIINSTANCEGETDEVICE)(
561  _In_
563  _In_
564  WDFWMIINSTANCE WmiInstance
565  );
566 
569 WDFDEVICE
570 WdfWmiInstanceGetDevice(
571  _In_
572  WDFWMIINSTANCE WmiInstance
573  )
574 {
575  return ((PFN_WDFWMIINSTANCEGETDEVICE) WdfFunctions[WdfWmiInstanceGetDeviceTableIndex])(WdfDriverGlobals, WmiInstance);
576 }
577 
578 //
579 // WDF Function: WdfWmiInstanceGetProvider
580 //
581 typedef
583 WDFAPI
584 WDFWMIPROVIDER
585 (STDCALL *PFN_WDFWMIINSTANCEGETPROVIDER)(
586  _In_
588  _In_
589  WDFWMIINSTANCE WmiInstance
590  );
591 
594 WDFWMIPROVIDER
595 WdfWmiInstanceGetProvider(
596  _In_
597  WDFWMIINSTANCE WmiInstance
598  )
599 {
600  return ((PFN_WDFWMIINSTANCEGETPROVIDER) WdfFunctions[WdfWmiInstanceGetProviderTableIndex])(WdfDriverGlobals, WmiInstance);
601 }
602 
603 //
604 // WDF Function: WdfWmiInstanceFireEvent
605 //
606 typedef
609 WDFAPI
610 NTSTATUS
611 (STDCALL *PFN_WDFWMIINSTANCEFIREEVENT)(
612  _In_
614  _In_
615  WDFWMIINSTANCE WmiInstance,
616  _In_opt_
619  PVOID EventData
620  );
621 
625 NTSTATUS
626 WdfWmiInstanceFireEvent(
627  _In_
628  WDFWMIINSTANCE WmiInstance,
629  _In_opt_
632  PVOID EventData
633  )
634 {
635  return ((PFN_WDFWMIINSTANCEFIREEVENT) WdfFunctions[WdfWmiInstanceFireEventTableIndex])(WdfDriverGlobals, WmiInstance, EventDataSize, EventData);
636 }
637 
638 
639 
640 #endif // (NTDDI_VERSION >= NTDDI_WIN2K)
641 
642 
643 
645 
646 #endif // _WDFWMI_H_
647 
_In_ ULONG _Out_ PULONG BufferUsed
Definition: wdfwmi.h:92
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_WMI_PROVIDER_CONFIG WmiProviderConfig
Definition: wdfwmi.h:356
_In_ ULONG _In_ ULONG _In_ ULONG _Inout_updates_bytes_(OutBufferSize)) PVOID Buffer
Definition: wdfwmi.h:148
_Must_inspect_result_ _In_ WDFDEVICE _In_ DEVICE_REGISTRY_PROPERTY _In_ ULONG BufferLength
Definition: wdfdevice.h:3767
_Must_inspect_result_ _In_ WDFWMIINSTANCE _In_opt_ ULONG EventDataSize
Definition: wdfwmi.h:615
#define _Must_inspect_result_
Definition: no_sal2.h:62
_In_ ULONG _Out_writes_bytes_to_(OutBufferSize, *BufferUsed) PVOID OutBuffer
Definition: wdfwmi.h:88
PFN_WDF_WMI_INSTANCE_SET_INSTANCE EvtWmiInstanceSetInstance
Definition: wdfwmi.h:256
_In_ ULONG _In_ ULONG _In_ ULONG _When_(InBufferSize >=OutBufferSize, _Inout_updates_bytes_(InBufferSize)) _When_(InBufferSize< OutBufferSize
Definition: wdfwmi.h:147
_In_ UCHAR _In_ ULONG _Out_ PUCHAR _Outptr_result_bytebuffer_ OutBufferLength PVOID * OutBuffer
Definition: scsi.h:4071
_In_ WDFWMIPROVIDER _In_ WDF_WMI_PROVIDER_CONTROL ProviderControl
Definition: wdfwmi.h:419
#define WDF_PTR_ADD_OFFSET(_ptr, _offset)
Definition: wdfcore.h:144
WDF_EXTERN_C_START enum _WDF_WMI_PROVIDER_CONTROL WDF_WMI_PROVIDER_CONTROL
LONG NTSTATUS
Definition: precomp.h:26
_In_ ULONGLONG _In_ ULONGLONG _In_ BOOLEAN Enable
Definition: ntddpcm.h:140
PFN_WDF_WMI_PROVIDER_FUNCTION_CONTROL EvtWmiProviderFunctionControl
Definition: wdfwmi.h:199
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_WMI_INSTANCE_CONFIG _In_opt_ PWDF_OBJECT_ATTRIBUTES InstanceAttributes
Definition: wdfwmi.h:474
EVT_WDF_WMI_INSTANCE_SET_INSTANCE * PFN_WDF_WMI_INSTANCE_SET_INSTANCE
Definition: wdfwmi.h:111
WDFWMIPROVIDER Provider
Definition: wdfwmi.h:226
struct _WDF_WMI_INSTANCE_CONFIG WDF_WMI_INSTANCE_CONFIG
DriverGlobals
FORCEINLINE VOID WDF_WMI_PROVIDER_CONFIG_INIT(_Out_ PWDF_WMI_PROVIDER_CONFIG Config, _In_ CONST GUID *Guid)
Definition: wdfwmi.h:205
EVT_WDF_WMI_PROVIDER_FUNCTION_CONTROL * PFN_WDF_WMI_PROVIDER_FUNCTION_CONTROL
Definition: wdfwmi.h:171
#define WDF_EXTERN_C_END
Definition: wdfwmi.h:40
_Must_inspect_result_ _In_ WDFWMIINSTANCE WmiInstance
Definition: wdfwmi.h:514
PWDF_WMI_PROVIDER_CONFIG ProviderConfig
Definition: wdfwmi.h:233
_Must_inspect_result_ _In_ WDFDEVICE Device
Definition: wdfwmi.h:356
#define _In_opt_
Definition: no_sal2.h:212
#define STATUS_BUFFER_TOO_SMALL
Definition: shellext.h:69
#define WdfFunctions
Definition: wdf.h:66
_In_ ULONG _In_reads_bytes_(InBufferSize) PVOID InBuffer)
Definition: wdfwmi.h:107
_WDF_WMI_PROVIDER_CONTROL
Definition: wdfwmi.h:50
#define _Out_writes_bytes_(s)
Definition: no_sal2.h:178
struct _WDF_WMI_INSTANCE_CONFIG * PWDF_WMI_INSTANCE_CONFIG
_Must_inspect_result_ _In_ WDFDEVICE _In_ WDFSTRING String
Definition: wdfdevice.h:2430
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_WMI_INSTANCE_CONFIG _In_opt_ PWDF_OBJECT_ATTRIBUTES _Out_opt_ WDFWMIINSTANCE * Instance
Definition: wdfwmi.h:474
#define WDFAPI
Definition: wdftypes.h:53
typedef _Function_class_(EVT_WDF_WMI_INSTANCE_QUERY_INSTANCE) _IRQL_requires_same_ _IRQL_requires_max_(PASSIVE_LEVEL) NTSTATUS STDCALL EVT_WDF_WMI_INSTANCE_QUERY_INSTANCE(_In_ WDFWMIINSTANCE WmiInstance
PFN_WDF_WMI_INSTANCE_QUERY_INSTANCE EvtWmiInstanceQueryInstance
Definition: wdfwmi.h:251
unsigned char BOOLEAN
_In_ WDF_WMI_PROVIDER_CONTROL Control
Definition: wdfwmi.h:166
#define _Out_
Definition: no_sal2.h:160
#define _IRQL_requires_same_
Definition: driverspecs.h:215
Definition: bufpool.h:45
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_WMI_PROVIDER_CONFIG _In_opt_ PWDF_OBJECT_ATTRIBUTES _Out_ WDFWMIPROVIDER * WmiProvider
Definition: wdfwmi.h:356
PFN_WDF_WMI_INSTANCE_SET_ITEM EvtWmiInstanceSetItem
Definition: wdfwmi.h:261
FORCEINLINE VOID WDF_WMI_INSTANCE_CONFIG_INIT_PROVIDER_CONFIG(_Out_ PWDF_WMI_INSTANCE_CONFIG Config, _In_ PWDF_WMI_PROVIDER_CONFIG ProviderConfig)
Definition: wdfwmi.h:286
FORCEINLINE NTSTATUS WDF_WMI_BUFFER_APPEND_STRING(_Out_writes_bytes_(BufferLength) PVOID Buffer, _In_ ULONG BufferLength, _In_ PCUNICODE_STRING String, _Out_ PULONG RequiredSize)
Definition: wdfwmi.h:299
_In_ ULONG DataItemId
Definition: wdfwmi.h:123
#define _Out_opt_
Definition: no_sal2.h:214
PWDF_DRIVER_GLOBALS WdfDriverGlobals
_In_ ULONG InBufferSize
Definition: wdfwmi.h:106
#define STDCALL
Definition: wdf.h:45
_In_ ULONG OutBufferSize
Definition: wdfwmi.h:87
EVT_WDF_WMI_INSTANCE_EXECUTE_METHOD * PFN_WDF_WMI_INSTANCE_EXECUTE_METHOD
Definition: wdfwmi.h:154
_Must_inspect_result_ _In_ WDFOBJECT _In_ CONST GUID * Guid
Definition: wdfobject.h:760
uint64_t ULONGLONG
Definition: typedefs.h:67
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_WMI_PROVIDER_CONFIG _In_opt_ PWDF_OBJECT_ATTRIBUTES ProviderAttributes
Definition: wdfwmi.h:356
_Must_inspect_result_ _In_ WDFWMIINSTANCE _In_opt_ ULONG _In_reads_bytes_opt_(EventDataSize) PVOID EventData)
Definition: wdfwmi.h:618
#define WDF_EXTERN_C_START
Definition: wdfwmi.h:39
_In_ ULONG MethodId
Definition: wdfwmi.h:142
#define NTSTATUS
Definition: precomp.h:20
BOOLEAN UseContextForQuery
Definition: wdfwmi.h:241
#define VOID
Definition: acefi.h:82
PFN_WDF_WMI_INSTANCE_EXECUTE_METHOD EvtWmiInstanceExecuteMethod
Definition: wdfwmi.h:266
#define PASSIVE_LEVEL
Definition: env_spec_w32.h:693
_Must_inspect_result_ _In_ WDFDEVICE Device
Definition: wdfchildlist.h:474
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_CHILD_LIST_CONFIG Config
Definition: wdfchildlist.h:474
#define DISPATCH_LEVEL
Definition: env_spec_w32.h:696
#define _In_
Definition: no_sal2.h:158
_Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS(STDCALL *PFN_WDFWMIPROVIDERCREATE)(_In_ PWDF_DRIVER_GLOBALS DriverGlobals
Definition: wdfwmi.h:349
unsigned short USHORT
Definition: pedump.c:61
#define FORCEINLINE
Definition: wdftypes.h:67
unsigned int * PULONG
Definition: retypes.h:1
_WDF_WMI_PROVIDER_FLAGS
Definition: wdfwmi.h:68
enum _WDF_WMI_PROVIDER_FLAGS WDF_WMI_PROVIDER_FLAGS
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_WMI_INSTANCE_CONFIG InstanceConfig
Definition: wdfwmi.h:474
#define BOOLEAN
Definition: pedump.c:73
struct _WDF_WMI_PROVIDER_CONFIG * PWDF_WMI_PROVIDER_CONFIG
unsigned int ULONG
Definition: retypes.h:1
#define RtlZeroMemory(Destination, Length)
Definition: typedefs.h:262
#define RtlCopyMemory(Destination, Source, Length)
Definition: typedefs.h:263
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_DEVICE_PROPERTY_DATA _In_ ULONG _Out_ PVOID _Out_ PULONG RequiredSize
Definition: wdfdevice.h:4431
#define STATUS_SUCCESS
Definition: shellext.h:65
FORCEINLINE VOID WDF_WMI_INSTANCE_CONFIG_INIT_PROVIDER(_Out_ PWDF_WMI_INSTANCE_CONFIG Config, _In_ WDFWMIPROVIDER Provider)
Definition: wdfwmi.h:273
#define APC_LEVEL
Definition: env_spec_w32.h:695
#define CONST
Definition: pedump.c:81
IN PVOID Instance
Definition: pci.h:361
EVT_WDF_WMI_INSTANCE_SET_ITEM * PFN_WDF_WMI_INSTANCE_SET_ITEM
Definition: wdfwmi.h:130
struct _WDF_WMI_PROVIDER_CONFIG WDF_WMI_PROVIDER_CONFIG
EVT_WDF_WMI_INSTANCE_QUERY_INSTANCE * PFN_WDF_WMI_INSTANCE_QUERY_INSTANCE
Definition: wdfwmi.h:94