| title | IHttpModuleRegistrationInfo::SetGlobalNotifications Method |
|---|---|
| ms.date | 10/07/2016 |
| description | The IHttpModuleRegistrationInfo SetGlobalNotifications Method registers the global-level notifications for a module. |
| ms.assetid | a3d195c5-6bf1-27c5-d9a4-6be71d081161 |
Registers the global-level notifications for a module.
virtual HRESULT SetGlobalNotifications(
IN CGlobalModule* pGlobalModule,
IN DWORD dwGlobalNotifications
) = 0; pGlobalModule
[IN] A pointer to a CGlobalModule class.
dwGlobalNotifications
[IN] A bitmask value that contains the global notifications to register. (Defined in Httpserv.h.)
An HRESULT. Possible values include, but are not limited to, those in the following table.
| Value | Description |
|---|---|
| S_OK | Indicates that the operation was successful. |
| ERROR_ALREADY_EXISTS | Indicates that the module has already been registered. |
The SetGlobalNotifications method registers the request-level notifications for a CGlobalModule class.
Note
The bitmask values for global-level notifications are defined in the Httpserv.h file.
The SetGlobalNotifications method requires a pointer to a CGlobalModule class, and IIS will automatically create an instance of that class.
Note
The CGlobalModule class must define a Terminate method.
The following code example demonstrates how to create an HTTP module that uses the RegisterModule function and the following methods to register a module for global-level and request-level notifications.
-
The SetRequestNotifications method registers a CHttpModule class for a request-level OnBeginRequest notification.
-
The SetPriorityForRequestNotification method sets the module's priority for request-level notifications.
-
The
SetGlobalNotificationsmethod registers aCGlobalModuleclass for a global-level OnGlobalPreBeginRequest notification. -
The SetPriorityForGlobalNotification method sets the module's priority for global-level notification.
The module responds to the registered notifications and writes entries to the application log in the Event Viewer.
Note
The entries in the Event Viewer will display "IISADMIN" as the event source.
[!code-cppIHttpModuleRegistrationInfoSetGlobalNotifications#1]
Your module must export the RegisterModule function. You can export this function by creating a module definition (.def) file for your project, or you can compile the module by using the /EXPORT:RegisterModule switch. For more information, see Walkthrough: Creating a Request-Level HTTP Module By Using Native Code.
You can optionally compile the code by using the __stdcall (/Gz) calling convention instead of explicitly declaring the calling convention for each function.
| Type | Description |
|---|---|
| Client | - IIS 7.0 on [!INCLUDEwinvista] - IIS 7.5 on Windows 7 - IIS 8.0 on Windows 8 - IIS 10.0 on Windows 10 |
| Server | - IIS 7.0 on [!INCLUDEwinsrv2008] - IIS 7.5 on Windows Server 2008 R2 - IIS 8.0 on Windows Server 2012 - IIS 8.5 on Windows Server 2012 R2 - IIS 10.0 on Windows Server 2016 |
| Product | - IIS 7.0, IIS 7.5, IIS 8.0, IIS 8.5, IIS 10.0 - [!INCLUDEiisexp75], [!INCLUDEiisexp80], [!INCLUDEiisexp100] |
| Header | Httpserv.h |
IHttpModuleRegistrationInfo Interface
IHttpModuleRegistrationInfo::SetPriorityForGlobalNotification Method
IHttpModuleRegistrationInfo::SetPriorityForRequestNotification Method
IHttpModuleRegistrationInfo::SetRequestNotifications Method
PFN_REGISTERMODULE Function