In my WDF_WMI_INSTANCE_CONFIG structure I’ve defined the following callback functions for my provider:
- EvtWmiInstanceQueryInstance
- EvtWmiInstanceSetInstance
- EvtWmiInstanceSetItem
Using PowerShell I can use the Get-WmiObject
and Get-CimInstance
cmdlets to query my provider. My EvtWmiInstanceQueryInstance
callback is called appropriately.
Using PowerShell I can use the Set-WmiInstance
and Set-CimInstance
cmdlets to set all instance data in my provider. My EvtWmiInstanceSetInstance
callback is called appropriately.
How on Earth do I set a single item/property of my instance in my provider?
When I call set-wmiinstance -Path $path -Argument @{my_property=10}
my EvtWmiInstanceSetItem
callback is not called and instead my EvtWmiInstanceSetInstance
callback is called.
I tried following the instructions below, but it seems to call my EvtWmiInstanceSetItem
callback instead of my EvtWmiInstanceSetInstance
callback.
https://docs.microsoft.com/en-us/windows/win32/wmisdk/updating-part-of-an-instance