Skip to content

Latest commit

 

History

History
58 lines (40 loc) · 4.11 KB

File metadata and controls

58 lines (40 loc) · 4.11 KB
title IMetadataInfo::GetMetaPath Method
description Describe the IMetadataInfo::GetMetaPath method and details its syntax, parameters, return value, code example, and requirements.
ms.date 10/07/2016
ms.assetid 939615c0-3b0f-3fe7-42af-ef430a251532

IMetadataInfo::GetMetaPath Method

Retrieves the configuration path for the current context.

Syntax

virtual PCWSTR GetMetaPath(  
   VOID  
) const = 0;  

Parameters

This method takes no parameters.

Return Value

A pointer to a string that contains the configuration path.

Remarks

The GetMetaPath method retrieves the configuration path for the current context. For example, requests for the default Web site on a server running [!INCLUDEiisver] will usually return the MACHINE/WEBROOT/APPHOST/Default Web Site path.

Example

The following code example demonstrates how to create an HTTP module that uses the IHttpContext::GetMetadata method to retrieve a pointer to an IMetadataInfo interface. The module completes the following steps:

  1. Uses the GetMetaPath method to retrieve the configuration path for the current request.

  2. Uses the IHttpServer::GetConfigObject method to retrieve a pointer to an INativeConfigurationSystem interface.

  3. Passes the configuration path for the current request to the INativeConfigurationSystem::GetConfigSection method.

  4. Retrieves an INativeConfigurationElement interface for the log settings for IIS.

  5. Uses the INativeConfigurationElement::GetBooleanProperty method to retrieve a value that indicates whether logging is enabled for the current request context.

  6. Returns this information to a Web client and then exits.

[!code-cppIMetadataInfoGetMetaPath#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.

Requirements

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

See Also

IMetadataInfo Interface