Freigeben über


Service Autostart Providers <serviceAutoStartProviders>

Übersicht

Das <serviceAutoStartProviders> Element gibt eine Auflistung von verwalteten Assemblys an, die vom Windows Process Activation Service (WAS) automatisch geladen werden, wenn das startMode Attribut eines Anwendungspools auf AlwaysRunning eingestellt ist. Mit dieser Auflistung können Entwickler Assemblys angeben, die Initialisierungsaufgaben ausführen, bevor HTTP-Anforderungen bearbeitet werden. Beispielsweise kann ein Anwendungsentwickler die anfänglichen Datenbankverbindungen für die Anwendung einrichten, bevor IIS mit der Anforderungsverarbeitung beginnt. Dadurch kann die Anwendung Erstanforderungen, die Zugriffe auf eine Datenbank erfordern, schneller ausführen.

Weitere Informationen zum Konfigurieren von Anwendungspools für den automatischen Start finden Sie im <applicationPools> Thema.

Hinweis

Dieses Element wurde in IIS 7.5 eingeführt.

Kompatibilität

Version Hinweise
IIS 10.0 Das <serviceAutoStartProviders> Element wurde in IIS 10.0 nicht geändert.
IIS 8.5 Das <serviceAutoStartProviders> Element wurde in IIS 8.5 nicht geändert.
IIS 8.0 Das <serviceAutoStartProviders> Element wurde in IIS 8.0 nicht geändert.
IIS 7.5 Das <serviceAutoStartProviders> Element wurde in IIS 7.5 eingeführt.
IIS 7.0 N/V
IIS 6.0 N/V

Setup

Das <serviceAutoStartProviders> Element ist in der Standardinstallation von IIS 7.5 enthalten.

Gewusst wie

Konfigurieren eines Service Autostart Provider

Hinweis

Es gibt keine direkte Benutzeroberfläche, über die Sie das <serviceAutoStartProviders> Element konfigurieren können. Daher verwenden die folgenden Schritte das IIS-Konfigurations-Editor-Feature.

  1. Öffnen Sie den Internet Information Services (IIS) Manager:

    • Wenn Sie Windows Server 2012 oder Windows Server 2012 R2 verwenden:

      • Klicken Sie in der Taskleiste auf Server-Manager, dann auf Tools und dann auf den Internet Information Services (IIS) Manager.
    • Wenn Sie Windows 8 oder Windows 8.1 verwenden:

      • Halten Sie die Windows-Taste gedrückt, drücken Sie den Buchstaben X, und klicken Sie dann auf Systemsteuerung.
      • Klicken Sie auf Verwaltung und doppelklicken Sie dann auf den Internet Information Services (IIS) Manager.
    • Wenn Sie Windows Server 2008 oder Windows Server 2008 R2 verwenden:

      • Klicken Sie auf der Taskleiste auf Start, zeigen Sie auf Verwaltung und dann auf den Internet Information Services (IIS) Manager.
    • Wenn Sie Windows Vista oder Windows 7 verwenden:

      • Klicken Sie auf der Taskleiste auf Start und dann auf Systemsteuerung.
      • Doppelklicken Sie auf Verwaltung und doppelklicken Sie dann auf den Internet Information Services (IIS) Manager.
  2. Klicken Sie im Bereich Verbindungen auf den Servernamen.

  3. Doppelklicken Sie im Startbereich auf das Feature Konfigurations-Editor.
    Screenshot of Server Home pane displaying Configuration Editor selected.

  4. Erweitern Sie im Dropdownmenü Abschnittsystem.applicationHost , und klicken Sie dann aufserviceAutoStartProviders.
    Screenshot of Configuration Editor page showing system dot application Host tab expanded.

  5. Klicken Sie auf der rechten Seite des Felds (Auflistung) auf die Auslassungspunkte ( ... ).

  6. Klicken Sie im Bereich Aktionen auf hinzufügen.

  7. Wenn das Dialogfeld Auflistungs-Editor angezeigt wird:

    • Geben Sie den Namen Ihres Autostartanbieters in das Namensfeld ein. Zum Beispiel:
      "MyAutostartProvider"
    • Geben Sie den verwalteten Typ Ihrer AutoStartassembly in das Typfeld ein. Zum Beispiel:
      "MyAutostartProvider, MyAutostartProvider, version=1.0.0.0, Culture=neutral, PublicKeyToken=426f62526f636b73"
    • Schließen Sie das Auflistungs-Editor Dialogfeld.
      Screenshot of Collection Editor dialog box showing fields for name and managed type of auto start provider.
  8. Klicken Sie im Bereich Aktionen auf Übernehmen.

Hinweis

Dieser Abschnitt enthält Informationen zum Ändern Ihrer IIS-Einstellungen mithilfe des IIS-Konfigurations-Editors. Die falsche Bearbeitung Ihrer IIS-Konfigurationseinstellungen kann ihre IIS-Installation erheblich beschädigen. Daher müssen Sie sicherstellen, dass Sie diese Schritte sorgfältig ausführen. Zur zusätzlichen Sicherheit sollten Sie Ihre IIS-Konfigurationseinstellungen sichern, bevor Sie den IIS-Konfigurations-Editor verwenden, um Änderungen vorzunehmen. Weitere Informationen zum Sichern Ihrer IIS-Konfigurationseinstellungen und zur Verwendung des IIS-Konfigurations-Editors finden Sie in den folgenden Themen:

Konfiguration

Das <serviceAutoStartProviders> Element wird auf globaler Ebene in der Datei ApplicationHost.config konfiguriert.

Attribute

Keine

Untergeordnete Elemente

Element Beschreibung
add Optionales Element.

Fügt der Auflistung von Autostartanbietern einen Anbieter hinzu.
clear Optionales Element.

Löscht die Auflistung von Autostartanbietern.
remove Optionales Element.

Entfernt einen Anbieter aus der Auflistung von Autostartanbietern.

Konfigurationsbeispiel

Im folgenden Beispiel wird ein <serviceAutoStartProviders> Element angezeigt, das der Auflistung einen benutzerdefinierten Autostartanbieter hinzufügt.

<serviceAutoStartProviders>
   <add name="MyAutostartProvider" type="MyAutostartProvider, MyAutostartProvider, version=1.0.0.0, Culture=neutral, PublicKeyToken=426f62526f636b73" />
</serviceAutoStartProviders>

Beispielcode

In den folgenden Beispielen wird der Auflistung von Autostartanbietern ein Beispielanbieter hinzugefügt.

AppCmd.exe

appcmd.exe set config -section:system.applicationHost/serviceAutoStartProviders /+"[name='MyAutostartProvider',type='MyAutostartProvider, MyAutostartProvider, version=1.0.0.0, Culture=neutral, PublicKeyToken=426f62526f636b73']" /commit:apphost

Hinweis

Sie müssen unbedingt den Commitparameter auf apphost festlegen, wenn Sie AppCmd.exe verwenden, um diese Einstellungen zu konfigurieren. Dadurch werden die Konfigurationseinstellungen auf den entsprechenden Speicherortabschnitt in der Datei ApplicationHost.config festgelegt.

C#

using System;
using System.Text;
using Microsoft.Web.Administration;

internal static class Sample {
   private static void Main() {
      using(ServerManager serverManager = new ServerManager()) { 
         Configuration config = serverManager.GetApplicationHostConfiguration();
         ConfigurationSection serviceAutoStartProvidersSection = config.GetSection("system.applicationHost/serviceAutoStartProviders");
         ConfigurationElementCollection serviceAutoStartProvidersCollection = serviceAutoStartProvidersSection.GetCollection();

         ConfigurationElement addElement = serviceAutoStartProvidersCollection.CreateElement("add");
         addElement["name"] = @"MyAutostartProvider";
         addElement["type"] = @"MyAutostartProvider, MyAutostartProvider, version=1.0.0.0, Culture=neutral, PublicKeyToken=426f62526f636b73";
         serviceAutoStartProvidersCollection.Add(addElement);

         serverManager.CommitChanges();
      }
   }
}

VB.NET

Imports System
Imports System.Text
Imports Microsoft.Web.Administration

Module Sample
   Sub Main()
      Dim serverManager As ServerManager = New ServerManager
      Dim config As Configuration = serverManager.GetApplicationHostConfiguration
      Dim serviceAutoStartProvidersSection As ConfigurationSection = config.GetSection("system.applicationHost/serviceAutoStartProviders")
      Dim serviceAutoStartProvidersCollection As ConfigurationElementCollection = serviceAutoStartProvidersSection.GetCollection

      Dim addElement As ConfigurationElement = serviceAutoStartProvidersCollection.CreateElement("add")
      addElement("name") = "MyAutostartProvider"
      addElement("type") = "MyAutostartProvider, MyAutostartProvider, version=1.0.0.0, Culture=neutral, PublicKeyToken=426f62526f636b73"
      serviceAutoStartProvidersCollection.Add(addElement)

      serverManager.CommitChanges()
   End Sub
End Module

JavaScript

var adminManager = new ActiveXObject('Microsoft.ApplicationHost.WritableAdminManager');
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST";

var serviceAutoStartProvidersSection = adminManager.GetAdminSection("system.applicationHost/serviceAutoStartProviders", "MACHINE/WEBROOT/APPHOST");
var serviceAutoStartProvidersCollection = serviceAutoStartProvidersSection.Collection;

var addElement = serviceAutoStartProvidersCollection.CreateNewElement("add");
addElement.Properties.Item("name").Value = "MyAutostartProvider";
addElement.Properties.Item("type").Value = "MyAutostartProvider, MyAutostartProvider, version=1.0.0.0, Culture=neutral, PublicKeyToken=426f62526f636b73";
serviceAutoStartProvidersCollection.AddElement(addElement);

adminManager.CommitChanges();

VBScript

Set adminManager = createObject("Microsoft.ApplicationHost.WritableAdminManager")
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST"

Set serviceAutoStartProvidersSection = adminManager.GetAdminSection("system.applicationHost/serviceAutoStartProviders", "MACHINE/WEBROOT/APPHOST")
Set serviceAutoStartProvidersCollection = serviceAutoStartProvidersSection.Collection

Set addElement = serviceAutoStartProvidersCollection.CreateNewElement("add")
addElement.Properties.Item("name").Value = "MyAutostartProvider"
addElement.Properties.Item("type").Value = "MyAutostartProvider, MyAutostartProvider, version=1.0.0.0, Culture=neutral, PublicKeyToken=426f62526f636b73"
serviceAutoStartProvidersCollection.AddElement(addElement)

adminManager.CommitChanges()