Is there an easy way to detect whether the messaging component is installed and the service is running in Windows using C#?
A:
http://weblogs.asp.net/rosherove/archive/2003/09/24/28864.aspx
There's a code snippet to get a list of installed programs.
Robert Greiner
2010-04-13 15:00:36
+1
A:
Checking for the existence of the service, and its status, could be accomplished by executing a WMI query:
// Setup the query
ManagementObjectSearcher searcher = new ManagementObjectSearcher("root\\CIMV2",
"SELECT * FROM Win32_Service WHERE Name = 'Blah'");
// Execute the query and enumerate the objects
foreach (ManagementObject queryObj in searcher.Get())
{
// examine the query results to find the info you need. For example:
string name = (string)queryObj["Name"];
bool started = (bool)queryObj["Started"];
string status = (string)queryObj["Status"];
}
For more info on the WMI Win32_Service class, see here.
Odrade
2010-04-13 15:06:28