34 #define WDF_EXTERN_C extern "C"
35 #define WDF_EXTERN_C_START extern "C" {
36 #define WDF_EXTERN_C_END }
39 #define WDF_EXTERN_C_START
40 #define WDF_EXTERN_C_END
48#if (NTDDI_VERSION >= NTDDI_WIN2K)
83EVT_WDF_WMI_INSTANCE_QUERY_INSTANCE(
102EVT_WDF_WMI_INSTANCE_SET_INSTANCE(
119EVT_WDF_WMI_INSTANCE_SET_ITEM(
138EVT_WDF_WMI_INSTANCE_EXECUTE_METHOD(
162EVT_WDF_WMI_PROVIDER_FUNCTION_CONTROL(
294 Config->ProviderConfig = ProviderConfig;
352(
STDCALL *PFN_WDFWMIPROVIDERCREATE)(
390(
STDCALL *PFN_WDFWMIPROVIDERGETDEVICE)(
400WdfWmiProviderGetDevice(
415(
STDCALL *PFN_WDFWMIPROVIDERISENABLED)(
427WdfWmiProviderIsEnabled(
444(
STDCALL *PFN_WDFWMIPROVIDERGETTRACINGHANDLE)(
454WdfWmiProviderGetTracingHandle(
470(
STDCALL *PFN_WDFWMIINSTANCECREATE)(
509(
STDCALL *PFN_WDFWMIINSTANCEREGISTER)(
520WdfWmiInstanceRegister(
535(
STDCALL *PFN_WDFWMIINSTANCEDEREGISTER)(
545WdfWmiInstanceDeregister(
560(
STDCALL *PFN_WDFWMIINSTANCEGETDEVICE)(
570WdfWmiInstanceGetDevice(
585(
STDCALL *PFN_WDFWMIINSTANCEGETPROVIDER)(
595WdfWmiInstanceGetProvider(
611(
STDCALL *PFN_WDFWMIINSTANCEFIREEVENT)(
626WdfWmiInstanceFireEvent(
#define _IRQL_requires_same_
#define _Function_class_(x)
#define _Out_writes_bytes_(size)
#define _Must_inspect_result_
_In_ ULONGLONG _In_ ULONGLONG _In_ BOOLEAN Enable
_In_ UCHAR _In_ ULONG _Out_ PUCHAR _Outptr_result_bytebuffer_ OutBufferLength PVOID * OutBuffer
#define STATUS_BUFFER_TOO_SMALL
PWDF_WMI_PROVIDER_CONFIG ProviderConfig
PFN_WDF_WMI_INSTANCE_SET_ITEM EvtWmiInstanceSetItem
BOOLEAN UseContextForQuery
PFN_WDF_WMI_INSTANCE_QUERY_INSTANCE EvtWmiInstanceQueryInstance
PFN_WDF_WMI_INSTANCE_EXECUTE_METHOD EvtWmiInstanceExecuteMethod
PFN_WDF_WMI_INSTANCE_SET_INSTANCE EvtWmiInstanceSetInstance
PFN_WDF_WMI_PROVIDER_FUNCTION_CONTROL EvtWmiProviderFunctionControl
ULONG MinInstanceBufferSize
#define RtlCopyMemory(Destination, Source, Length)
#define RtlZeroMemory(Destination, Length)
_Must_inspect_result_ _In_ WDFDEVICE Device
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_CHILD_LIST_CONFIG Config
#define WDF_PTR_ADD_OFFSET(_ptr, _offset)
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_DEVICE_PROPERTY_DATA _In_ ULONG _Out_ PVOID _Out_ PULONG RequiredSize
_Must_inspect_result_ _In_ WDFDEVICE _In_ DEVICE_REGISTRY_PROPERTY _In_ ULONG BufferLength
_Must_inspect_result_ _In_ WDFDEVICE _In_ WDFSTRING String
PWDF_DRIVER_GLOBALS WdfDriverGlobals
@ WdfWmiProviderGetDeviceTableIndex
@ WdfWmiInstanceGetDeviceTableIndex
@ WdfWmiProviderIsEnabledTableIndex
@ WdfWmiInstanceDeregisterTableIndex
@ WdfWmiInstanceRegisterTableIndex
@ WdfWmiInstanceGetProviderTableIndex
@ WdfWmiInstanceFireEventTableIndex
@ WdfWmiProviderGetTracingHandleTableIndex
@ WdfWmiInstanceCreateTableIndex
@ WdfWmiProviderCreateTableIndex
_Must_inspect_result_ _In_ WDFOBJECT _In_ CONST GUID * Guid
FORCEINLINE VOID WDF_WMI_PROVIDER_CONFIG_INIT(_Out_ PWDF_WMI_PROVIDER_CONFIG Config, _In_ CONST GUID *Guid)
_Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS(STDCALL *PFN_WDFWMIPROVIDERCREATE)(_In_ PWDF_DRIVER_GLOBALS DriverGlobals
EVT_WDF_WMI_INSTANCE_EXECUTE_METHOD * PFN_WDF_WMI_INSTANCE_EXECUTE_METHOD
_In_ ULONG _Out_ PULONG BufferUsed
_In_ WDF_WMI_PROVIDER_CONTROL Control
_Must_inspect_result_ _In_ WDFDEVICE Device
_In_ ULONG _Out_writes_bytes_to_(OutBufferSize, *BufferUsed) PVOID OutBuffer
EVT_WDF_WMI_INSTANCE_QUERY_INSTANCE * PFN_WDF_WMI_INSTANCE_QUERY_INSTANCE
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_WMI_INSTANCE_CONFIG _In_opt_ PWDF_OBJECT_ATTRIBUTES InstanceAttributes
_WDF_WMI_PROVIDER_CONTROL
struct _WDF_WMI_INSTANCE_CONFIG * PWDF_WMI_INSTANCE_CONFIG
FORCEINLINE VOID WDF_WMI_INSTANCE_CONFIG_INIT_PROVIDER_CONFIG(_Out_ PWDF_WMI_INSTANCE_CONFIG Config, _In_ PWDF_WMI_PROVIDER_CONFIG ProviderConfig)
EVT_WDF_WMI_INSTANCE_SET_INSTANCE * PFN_WDF_WMI_INSTANCE_SET_INSTANCE
@ WdfWmiProviderValidFlags
@ WdfWmiProviderExpensive
@ WdfWmiProviderEventOnly
FORCEINLINE NTSTATUS WDF_WMI_BUFFER_APPEND_STRING(_Out_writes_bytes_(BufferLength) PVOID Buffer, _In_ ULONG BufferLength, _In_ PCUNICODE_STRING String, _Out_ PULONG RequiredSize)
FORCEINLINE VOID WDF_WMI_INSTANCE_CONFIG_INIT_PROVIDER(_Out_ PWDF_WMI_INSTANCE_CONFIG Config, _In_ WDFWMIPROVIDER Provider)
#define WDF_EXTERN_C_START
_Must_inspect_result_ _In_ WDFWMIINSTANCE _In_opt_ ULONG _In_reads_bytes_opt_(EventDataSize) PVOID EventData)
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_WMI_INSTANCE_CONFIG _In_opt_ PWDF_OBJECT_ATTRIBUTES _Out_opt_ WDFWMIINSTANCE * Instance
WDF_EXTERN_C_START enum _WDF_WMI_PROVIDER_CONTROL WDF_WMI_PROVIDER_CONTROL
_Must_inspect_result_ _In_ WDFWMIINSTANCE WmiInstance
struct _WDF_WMI_PROVIDER_CONFIG WDF_WMI_PROVIDER_CONFIG
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_WMI_INSTANCE_CONFIG InstanceConfig
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_WMI_PROVIDER_CONFIG WmiProviderConfig
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_WMI_PROVIDER_CONFIG _In_opt_ PWDF_OBJECT_ATTRIBUTES _Out_ WDFWMIPROVIDER * WmiProvider
_In_ ULONG _In_ ULONG _In_ ULONG _Inout_updates_bytes_(OutBufferSize)) PVOID Buffer
struct _WDF_WMI_PROVIDER_CONFIG * PWDF_WMI_PROVIDER_CONFIG
enum _WDF_WMI_PROVIDER_FLAGS WDF_WMI_PROVIDER_FLAGS
EVT_WDF_WMI_INSTANCE_SET_ITEM * PFN_WDF_WMI_INSTANCE_SET_ITEM
struct _WDF_WMI_INSTANCE_CONFIG WDF_WMI_INSTANCE_CONFIG
_Must_inspect_result_ _In_ WDFWMIINSTANCE _In_opt_ ULONG EventDataSize
EVT_WDF_WMI_PROVIDER_FUNCTION_CONTROL * PFN_WDF_WMI_PROVIDER_FUNCTION_CONTROL
_In_ WDFWMIPROVIDER _In_ WDF_WMI_PROVIDER_CONTROL ProviderControl
_In_ ULONG _In_reads_bytes_(InBufferSize) PVOID InBuffer)
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_WMI_PROVIDER_CONFIG _In_opt_ PWDF_OBJECT_ATTRIBUTES ProviderAttributes
_In_ ULONG _In_ ULONG _In_ ULONG _When_(InBufferSize >=OutBufferSize, _Inout_updates_bytes_(InBufferSize)) _When_(InBufferSize< OutBufferSize