簡體   English   中英

在C#中停止和啟動IIS

[英]Stopping and Starting IIS in C#

我需要能夠在C#中啟動/停止IIS。 我的經理已負責創建此模塊。 以下是我的嘗試:

ServiceController service = new ServiceController("w3svc");
service.Stop();

我收到以下異常:

無法在計算機“。”上打開w3svc服務。

我正在編寫代碼以停止本地計算機上的IIS。

我也嘗試使用IISAdmin作為服務名,但是在我的計算機上找不到IISAdmin

您必須使用Microsoft.Web.Administration

Microsoft.Web.Administration(MWA)API作為應用程序宿主管理API(AHADMIN)(作為本機代碼接口庫)構建為托管代碼包裝器。 它提供了一種編程方式來訪問和更新Web服務器配置和管理信息。

using System;
using System.Linq;
using Microsoft.Web.Administration;

class Program
{
    static void Main(string[] args)
    {
        var server = new ServerManager();
        var site = server.Sites.FirstOrDefault(s => s.Name == "Default Web Site");
        if (site != null)
        {
            //stop the site
            site.Stop();
            //start the site
            site.Start();
        }

    }
}

文章使用Microsoft.Web.Administration討論的詳細情形。

請注意,您必須以管理員身份運行C#應用程序才能在IIS上執行任何操作,否則可能會導致訪問被拒絕。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM