Я не ожидаю, что Mono когда-либо будет реализовывать код, который может взаимодействовать с WMI, поскольку это API для конкретной платформы. Если вы настраиваете свое программное обеспечение для работы в Windows, почему бы просто не использовать среду выполнения Microsoft .Net? Есть ли конкретная причина, по которой вы должны использовать Mono?
Самый простой ответ - просто использовать среду выполнения Microsoft, если можете, поскольку вы пишете код, не зависящий от платформы.
Если вы действительно должны использовать моно-среду выполнения и не можете использовать Microsoft System.Management.dll, я думаю, вы сможете получить то, что вы хотите, с помощью Interop Services. Mono может взаимодействовать с нативными библиотеками http://www.mono -project.com / Interop_with_Native_Libraries . Также WMI доступен через COM-интерфейсы, которые Mono также может сделать, поэтому вам может потребоваться пойти по этому пути. http://www.mono -project.com / COM
Ни Interop, ни COM не будут такими простыми, как просто использование System.Management.dll, но это альтернатива.