| title | IHttpApplicationProvider::GetApplication Method |
|---|---|
| description | Learn how the GetApplication method retrieves an IHttpApplication interface. |
| ms.date | 10/07/2016 |
| ms.assetid | 0fe58b12-e575-f28c-028e-1235e6f2d321 |
Retrieves an IHttpApplication interface.
virtual IHttpApplication* GetApplication(
VOID
) = 0; This method takes no parameters.
A pointer to an IHttpApplication interface.
Developers can use the GetApplication method to retrieve an IHttpApplication interface, which they can then use to retrieve configuration information for an application.
The following code example demonstrates how to create an HTTP module that performs the following tasks:
-
Registers for the GL_APPLICATION_START notification.
-
Creates a CGlobalModule class that contains an OnGlobalApplicationStart method. This method performs the following tasks:
-
Retrieves an
IHttpApplicationinterface by using theGetApplicationmethod. -
Retrieves the physical path of the current context's application by using the IHttpApplication::GetApplicationPhysicalPath method.
-
Writes the physical path information as an event to the application log of the Event Viewer.
-
-
Removes the
CGlobalModuleclass from memory and then exits.
[!code-cppIHttpApplicationProviderGetApplication#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 |
IHttpApplication Interface
IHttpApplicationProvider Interface