使用ADSI獲取IIS版本,C#源代碼示例

 

    /// <summary>
    
/// 服務器IIS版本
    
/// </summary>

    [Serializable]
    
public enum WebServerTypes
    
{
        
/// <summary>
        
/// 未知版本
        
/// </summary>

        Unknown,
        
/// <summary>
        
/// IIS 4.0
        
/// </summary>

        IIS4,
        
/// <summary>
        
/// IIS 5.0,5.1
        
/// </summary>

        IIS5,
        
/// <summary>
        
/// IIS 6.0
        
/// </summary>

        IIS6,
        
/// <summary>
        
/// IIS 7.0
        
/// </summary>

        IIS7
    }


   
public class IISHelper
    
{
        
/// <summary>
        
/// 獲取服務器IIS版本
        
/// </summary>
        
/// <param name="DomainName"></param>
        
/// <returns></returns>

        public WebServerTypes GetIISServerType(string DomainName)
        
{
            DomainName 
= "LOCALHOST";
            
string path = "IIS://" + DomainName + "/W3SVC/INFO";
            DirectoryEntry entry 
= null;
            
try
            
{
                entry 
= new DirectoryEntry(path);
            }

            
catch
            
{
                
return WebServerTypes.Unknown;
            }

            
int num = 5;
            
try
            
{
                num 
= (int)entry.Properties["MajorIISVersionNumber"].Value;
            }

            
catch
            
{
                
return WebServerTypes.IIS5;
            }

            
switch (num)
            
{
                
case 6:
                    
return WebServerTypes.IIS6;

                
case 7:
                    
return WebServerTypes.IIS7;
            }

            
return WebServerTypes.IIS6;
        }

  }

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章