我正在使用 c# 和 wmi 检索机器详细信息。我正在使用以下代码来检索信息:
ManagementScope scope =new ManagementScope(@"\\"+strIPAddress+@"\root\cimv2");
SelectQuery query = new SelectQuery();
query.QueryString = "select * from Win32_OperatingSystem";
ManagementObjectSearcher searcher = new ManagementObjectSearcher(scope, query);
ManagementObjectCollection queryCollection = searcher.Get();
foreach (ManagementObject m in queryCollection)
{
//////////////////////////////////
}
它适用于 windows 操作系统,但不适用于 linux 或 Citrix 服务器。
我也试过下面这段代码:
string strURL="http://www.google.com";
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(strURL);
try
{
HttpWebResponse response =(HttpWebResponse) request.GetResponse();
string strServer= response.Server;
}
catch (WebException wex)
{
// Safe cast to HttpWebResponse using 'as', will return null if unsuccessful
var httpWebResponse = wex.Response as HttpWebResponse;
if (httpWebResponse != null)
{
var httpStatusCode = httpWebResponse.StatusCode;
// HttpStatusCode is an enum, cast it to int for its actual value
var httpStatusCodeInt = (int)httpWebResponse.StatusCode;
}
}
它没有给我远程服务器操作系统名称,而是给我 IIS 名称。
当我通过互联网搜索时,我发现了以下站点:
任何人都可以检索信息的地方。谁能告诉我它是如何工作的,或者我们如何使用 c# 获取这些详细信息。