次の方法で共有


方法 : サービスを開始する

サービスをインストールした後で、サービスを起動します。 起動することで、サービス クラスの OnStart メソッドが呼び出されます。 通常、OnStart メソッドにはサービスが本来行う処理を定義します。 サービスの起動後は、手動で一時停止または停止するまで、アクティブの状態を維持します。

サービスを自動で起動するか手動で起動するかを設定できます。 自動的に起動するサービスは、そのサービスがインストールされているコンピューターを再起動したとき、または初めて電源を入れたときに起動します。 手動で起動するサービスは、ユーザーが起動する必要があります。

注意

既定では、Visual Studio で作成されたサービスは手動で起動するように設定されます。

サービスを手動で起動するには、サーバー エクスプローラーまたはサービス コントロール マネージャーを使用します。ServiceController コンポーネントでコードによって起動することもできます。

ServiceInstaller クラスの StartType プロパティを設定し、サービスを手動で起動するか自動で起動するかを指定します。

サービスの起動方法を指定するには

  1. サービスの作成後、必要なインストーラーを追加します。 詳細については、「方法 : サービス アプリケーションにインストーラーを追加する」を参照してください。

  2. デザイナーで、対象となるサービスのインストーラーをクリックします。

  3. [プロパティ] ウィンドウで、StartType プロパティに次のいずれかの値を設定します。

    サービスを起動するタイミング

    設定値

    コンピューターを再起動したとき。

    自動

    明示的なユーザー アクションによってサービスを開始するとき。

    手動

    ヒント

    サービスが起動しないようにするには、StartType プロパティを [無効] に設定します。 サーバーを数回再起動することが見込まれる場合は、サービスを自動的に起動しないように設定することで、再起動の時間を短縮できます。

    注意

    以上のプロパティやその他のプロパティの設定は、サービスのインストール後に変更できます。

    StartType プロパティが [手動] に設定されているサービスを起動するには、サーバー エクスプローラーまたは Windows サービス コントロール マネージャーを使用します。また、コードで起動することもできます。 起動方法によっては、サービス コントロール マネージャーのコンテキストではサービスを起動しません。サーバー エクスプローラーによるサービスの起動とコードによるサービスの起動の場合は、実際にはコントローラーを操作しています。

サーバー エクスプローラーでサービスを手動起動するには

  1. サーバーがサーバー エクスプローラーの一覧にない場合は追加します。 詳細については、「方法 : サーバー エクスプローラー/データベース エクスプローラーにアクセスして初期化する」を参照してください。

    注意

    Visual Studio の Standard Edition の場合、サーバー エクスプローラー[サーバー] ノードは利用できません。

  2. [サービス] ノードを展開し、開始するサービスを検索します。

  3. サービス名を右クリックし、[開始] をクリックします。

サービス制御マネージャーでサービスを手動起動するには

  1. サービス コントロール マネージャーを次のいずれかの方法で開きます。

    • Windows XP および Windows 2000 Professional のデスクトップで、[マイ コンピューター] を右クリックし、[管理] をクリックします。 表示されるダイアログ ボックスで、[サービスとアプリケーション] ノードを展開します。

      または

    • Windows Server 2003 および Windows 2000 Server では、[スタート] メニューの [プログラム] をポイントし、[管理ツール] をポイントして、[サービス] をクリックします。

      注意

      Windows NT Version 4.0 では、[コントロール パネル] でこのダイアログ ボックスを開くことができます。

    ウィンドウの [サービス] セクションに、サービスが一覧表示されます。

  2. 一覧で目的のサービスを右クリックし、[開始] をクリックします。

コードでサービスを手動起動するには

  1. ServiceController クラスのインスタンスを作成し、管理対象となるサービスと対話するように設定します。

  2. Start メソッドを呼び出してサービスを起動します。

参照

処理手順

方法 : Windows サービスを作成する

方法 : サービス アプリケーションにインストーラーを追加する

参照

方法 : サーバー エクスプローラー/データベース エクスプローラーにアクセスして初期化する

概念

Windows サービス アプリケーションの概要