IoWMIOpenBlock failing after windows reboot with reason WMI GUID not found, but when we disable enable the device from the driver where am calling this api, then it get the guid. Is there any solution for this to doing it without disable/enable??
What wmi guid are you trying to open (name, not value)? Sounds like you are trying to open a wmi block that doesn’t exist when your driver attempts the open and exists later. Guessing that the wmi block is created by a pnp driver that starts after yours (or really, the relationship between the start of your driver and the wmi provider is undefined).
Do you the specific provider of the guid? If it’s another pnp driver, does the provider driver enable a device interface? You could register for device interface notifications and when it arrives, open the wmi block.