Должно быть хорошо на Vista. Документы здесь указывают внизу страницы:
DLL: Wmicookr.dll в Windows Server 2003 и Windows XP, WmiPerfInst.dll в Windows Server 2008 и Windows Vista.
Можете ли вы проверить, что на вашем компьютере есть WmiPerfInst.dll
DLL?
Еще одна вещь, которую стоит попробовать - посмотреть, сможете ли вы получить статистику из соответствующего класса RawData? Vista, похоже, изменила способ, которым необработанные данные переводятся в готовые данные. Мои знания об этом довольно невелики (на основе очень беглого поиска в Google), поскольку я участвую только в WMI на XP / Svr2k3 / Svr2k8 - я не думал, что кто-то на самом деле использовал Vista :-)
И, если вы собираетесь принять мой ответ, хотя он и не помог, по крайней мере, позвольте мне заняться плагиатом вашего решения: -)
Эти счетчики можно отключить в реестре. Просто установите для HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ Perfdisk \ Performance \ Disable Performance Counter значение 0 и перезагрузите компьютер.
А если серьезно, спасибо за это. В какой-то момент нам, вероятно, придется самим поддерживать пост-Vista, так что это поможет нам узнать это.