以编程方式确定当前安装的Microsoft Internet信息服务(IIS)版本的首选方法是什么?
我知道可以通过查看HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W3SVC\Parameters中的MajorVersion键找到它。
是这样做的推荐方法,还是.NET开发人员可以使用的更安全或更美观的方法?
最佳答案
您可以构建一个WebRequest并将其发送到回送IP地址上的端口80,并获取Server HTTP header 。
HttpWebRequest myHttpWebRequest = (HttpWebRequest)WebRequest.Create("http://127.0.0.1/");
HttpWebResponse myHttpWebResponse = null;
try
{
myHttpWebResponse = (HttpWebResponse)myHttpWebRequest.GetResponse();
}
catch (WebException ex)
{
myHttpWebResponse = (HttpWebResponse)ex.Response;
}
string WebServer = myHttpWebResponse.Headers["Server"];
myHttpWebResponse.Close();
不知道这是否是更好的方法,但这当然是另一种选择。
关于.net - 如何以编程方式确定已安装的IIS版本,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/435050/