0

我正在使用 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 名称。

当我通过互联网搜索时,我发现了以下站点:

http://uptime.netcraft.com/

任何人都可以检索信息的地方。谁能告诉我它是如何工作的,或者我们如何使用 c# 获取这些详细信息。

4

0 回答 0