Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Obwohl die integrierte Anforderungsverarbeitungspipeline im IIS 7-Webserverkern nativen Codeentwicklern das Schreiben von HTTP-Modulen in C++ ermöglicht, sind die Ereignisbenachrichtigungen, die für Entwickler von systemeigenem Code und verwaltetem Code verfügbar sind, nicht identisch. Entwickler, die ein HTTP-Modul von einer verwalteten Sprache wie C# zu systemeigenem Code migrieren, müssen diese Unterschiede beheben, wenn sie ihre neuen Module erstellen.
Globale Benachrichtigungen
Mit IIS 7 können Entwickler jetzt http-Module mit systemeigenem Code erstellen, die Benachrichtigungen auf globaler Ebene verarbeiten. In früheren Versionen von IIS konnten Entwickler HTTP-Module erstellen, die Benachrichtigungen nur auf Anforderungsebene verarbeitet haben. HTTP-Module, die Benachrichtigungen auf globaler Ebene verarbeiten, werden zum Verarbeiten von Benachrichtigungen für eine Vielzahl von Ereignissen auf Serverebene verwendet.
In der folgenden Tabelle sind die globalen Benachrichtigungsmethoden aufgeführt, die entwicklern mit systemeigenem Code zur Verfügung stehen.
| Ereignisbenachrichtigungsmethode | Beschreibung |
|---|---|
| OnGlobalApplicationResolveModules | Wird aufgerufen, wenn IIS die registrierten Module auflöst. |
| OnGlobalApplicationStart | Wird aufgerufen, wenn IIS eine Anwendung startet. |
| OnGlobalApplicationStop | Wird aufgerufen, wenn IIS eine Anwendung verlässt. |
| OnGlobalCacheCleanup | Wird aufgerufen, wenn IIS den Cache löscht. |
| OnGlobalCacheOperation | Wird aufgerufen, wenn IIS einen cachebezogenen Vorgang ausführt. |
| BeiÄnderungDerGlobalenKonfiguration | Wird aufgerufen, wenn eine Änderung an einer Konfigurationsdatei vorgenommen wird. |
| BeiGlobalerBenutzerdefinierterBenachrichtigung | Wird aufgerufen, wenn ein Modul eine benutzerdefinierte Benachrichtigung auslöst. |
| OnGlobalFileChange | Wird aufgerufen, wenn eine Datei innerhalb einer Website geändert wird. |
| OnGlobalHealthCheck | Wird aufgerufen, wenn ein gesundheitsbezogener Vorgang ausgeführt wird. |
| OnGlobalPreBeginRequest | Wird aufgerufen, bevor eine Anforderung in die integrierte Anforderungsverarbeitungspipeline eintritt. |
| OnGlobalRSCAQuery | Wird aufgerufen, wenn eine Run-Time Status- und Steuerelementabfrage ausgeführt wird. |
| OnGlobalStopListening | Wird aufgerufen, wenn IIS keine neuen Anforderungen mehr akzeptiert. |
| OnGlobalThreadCleanup | Wird aufgerufen, wenn IIS einen Thread an den Threadpool zurückgibt. |
| OnGlobalTraceEvent | Wird aufgerufen, wenn ein Ablaufverfolgungsereignis ausgelöst wird. |
Vergleichen von Anforderungsbenachrichtigungen
Obwohl Anforderungsbenachrichtigungsmethoden für systemeigene Code und HTTP-Module mit verwaltetem Code auf viele Arten ähnlich sind, sind sie nicht vollständig analog. Beispielsweise ist die Liste der deterministischen Anforderungsbenachrichtigungsmethoden fast identisch für systemeigene Code- und Managed-Code-Module, aber die Liste der nicht deterministischen Anforderungsbenachrichtigungsmethoden unterscheidet sich erheblich.
Native-Code deterministische Anforderungsbenachrichtigungen
In der folgenden Tabelle sind die deterministischen Anforderungsbenachrichtigungsmethoden aufgeführt, die entwicklern mit systemeigenem Code zur Verfügung stehen.
| Ereignisbenachrichtigungsmethode | Post-Event-Benachrichtigungsmethode |
|---|---|
| OnBeginRequest | OnPostBeginRequest |
| OnAuthenticateRequest | OnPostAuthenticateRequest |
| OnAuthorizeRequest | OnPostAuthorizeRequest |
| OnResolveRequestCache | OnPostResolveRequestCache |
| OnMapRequestHandler | OnPostMapRequestHandler |
| OnAcquireRequestState | OnPostAcquireRequestState |
| OnPreExecuteRequestHandler | OnPostPreExecuteRequestHandler |
| OnExecuteRequestHandler | OnPostExecuteRequestHandler |
| OnReleaseRequestState | OnPostReleaseRequestState |
| OnUpdateRequestCache | OnPostUpdateRequestCache |
| OnLogRequest | OnPostLogRequest |
| OnEndRequest | OnPostEndRequest |
Managed-Code deterministische Anforderungsbenachrichtigungen
In der folgenden Tabelle sind die deterministischen Anforderungsbenachrichtigungsmethoden aufgeführt, die Entwicklern mit verwaltetem Code zur Verfügung stehen.
| Ereignisbenachrichtigungsmethode | Post-Event-Benachrichtigungsmethode |
|---|---|
| BeginRequest | (Keine) |
| Authenticaterequest | PostAuthenticateRequest |
| Autorisierungsanfrage | Postauthorizerequest |
| Resolverequestcache | Postresolverequestcache |
| MapRequestHandler | PostMapRequestHandler |
| AcquireRequestState | PostAcquireRequestState |
| PreRequestHandlerExecute | (Keine) |
| RequestHandlerExecute | Postrequesthandlerexecute |
| Freigabeanforderungsstatus | PostReleaseRequestState |
| Updaterequestcache | Postupdaterequestcache |
| Logrequest | Postprotokollanforderung |
| EndRequest | (Keine) |
Native-Code nicht deterministische Anforderungsbenachrichtigungen
In der folgenden Tabelle sind die nicht deterministischen Anforderungsbenachrichtigungsmethoden aufgeführt, die entwicklern mit systemeigenem Code zur Verfügung stehen.
| Ereignisbenachrichtigungsmethode | Post-Event-Benachrichtigungsmethode |
|---|---|
| OnAsyncCompletion | (Keine) |
| OnCustomRequestNotification | (Keine) |
| OnMapPath | (Keine) |
| OnReadEntity | (Keine) |
| OnSendResponse | (Keine) |
Managed-Code nicht deterministische Anforderungsbenachrichtigungen
In der folgenden Tabelle sind die nicht deterministischen Anforderungsbenachrichtigungsmethoden aufgeführt, die Entwicklern mit verwaltetem Code zur Verfügung stehen.
| Ereignisbenachrichtigungsmethode | Post-Event-Benachrichtigungsmethode |
|---|---|
| VorSendenAnfrageKopfdaten | (Keine) |
| PreSendRequestInhalt | (Keine) |
Siehe auch
Erstellen von Native-Code-HTTP-Modulen
Entwerfen Native-Code HTTP-Module