以编程方式检查是否安装了Windows消息传递?

有没有一种简单的方法来检测消息传递组件是否安装和服务在Windows中使用C#运行?

检查服务的存在及其状态可以通过执行WMI查询来完成:

// 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"]; } 

有关WMI Win32_Service类的更多信息,请参见此处。