Generate a managed class for WMI instrumentation

by Admin 7/14/2008 12:50:00 AM

So,I need a list of services from a remote machine for an application I am building for Wendys.  I wrote a boatload of System.Management code to do it, liike something like this:

   1:  Public Function ListServices() As Dictionary(Of String, String)
   2:    co = New ConnectionOptions()
   3:    co.Username = My.Settings.Username
   4:    co.Password = My.Settings.Password
   5:    co.Impersonation = ImpersonationLevel.Impersonate
   6:    scope = New ManagementScope("\\" + IPNumber + "\root\cimv2", co)
   7:    Dim result As New Dictionary(Of String, String)
   8:    Dim mc As New ManagementClass("Win32_Service")
   9:    Dim oc As ManagementObjectCollection
  10:    Dim query As New ObjectQuery
  11:    query.QueryString = "SELECT * FROM Win32_Service"
  12:    Dim mos As New ManagementObjectSearcher(scope, query)
  13:    oc = mos.Get
  14:    For Each item As ManagementObject In oc
  15:      result.Add(item.Item("DisplayName"), item.Item("State"))
  16:    Next
  17:    Return result
  18:  End Function 
  19:   

 

Then what did I learn?  Lo and behold, there is a Tool To Do This.  I hate it when that happens!  Just pass in the WMI namespace and it will generate all the class code you can eat.  (Win32_Battery made me 2800 lines of code).  Check it out here on MSDN.

Tags:

Biz | VB

About the author

Bill Sempf Bill Sempf
Author of C# All In One for Dummies (among other things)

E-mail me Send mail

Calendar

<<  March 2010  >>
MoTuWeThFrSaSu
22232425262728
1234567
891011121314
15161718192021
22232425262728
2930311234

View posts in large calendar

Pages

Recent posts

Recent comments

Disclaimer

The opinions expressed herein are my own personal opinions and do not represent my employer's view in anyway.

© Copyright 2010

Sign in