Skip to content
Merged
Original file line number Diff line number Diff line change
Expand Up @@ -20,4 +20,4 @@ Describes the native-code structures for the FTP service.

## See Also

[FTP Managed-Code Extensibility API Reference](https://msdn.microsoft.com/library/e7b57c2a-e14c-4f14-9707-df95ab8b3660)
[FTP Managed-Code Extensibility API Reference](https://learn.microsoft.com/previous-versions/iis/ftp-service-extensibility-reference/ftp-managed-code-extensibility-api-reference)
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ class CGlobalModule

|Name|Description|
|----------|-----------------|
|[OnGlobalApplicationPreload](../../web-development-reference/native-code-api-reference/iglobalapplicationpreloadprovider-interface.md)|deddc775-1ab0-492c-bda0-b32be5d4f4cc|
|[OnGlobalApplicationPreload](../../web-development-reference/native-code-api-reference/iglobalapplicationpreloadprovider-interface.md)| Provides a global-level interface for preloading an application into server memory. |
|[OnGlobalApplicationResolveModules](../../web-development-reference/native-code-api-reference/cglobalmodule-onglobalapplicationresolvemodules-method.md)|Represents the method that will handle a `GlobalApplicationResolveModules` event, which occurs when IIS resolves the registered modules.|
|[OnGlobalApplicationStart](../../web-development-reference/native-code-api-reference/cglobalmodule-onglobalapplicationstart-method.md)|Represents the method that will handle a `GlobalApplicationStart` event, which occurs when IIS starts an application.|
|[OnGlobalApplicationStop](../../web-development-reference/native-code-api-reference/cglobalmodule-onglobalapplicationstop-method.md)|Represents the method that will handle a `GlobalApplicationStop` event, which occurs when IIS shuts down an application.|
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ HRESULT MapPath(
|S_OK|Indicates that the operation was successful.|

## Remarks
To receive incoming remote calls for the [IAppHostPathMapper2 Interface](../../web-development-reference/native-code-api-reference/iapphostpathmapper2-interface.md) interface, the client must implement a UUID(0f80e901-8f4c-449a-bf90-13d5d082f187). It must then specify an object that implements the interface to the [IAppHostAdminManager::SetMetadata Method](../../web-development-reference/native-code-api-reference/iapphostadminmanager-setmetadata-method.md) method with the value of `bstrMetadataName` set to "pathMapper2".
To receive incoming remote calls for the [IAppHostPathMapper2 Interface](../../web-development-reference/native-code-api-reference/iapphostpathmapper2-interface.md) interface, the client must provide a COM object that implements the `IAppHostPathMapper2` interface (COM IID: 0f80e901-8f4c-449a-bf90-13d5d082f187). It must then specify an object that implements the interface to the [IAppHostAdminManager::SetMetadata Method](../../web-development-reference/native-code-api-reference/iapphostadminmanager-setmetadata-method.md) method with the value of `bstrMetadataName` set to "pathMapper2".

As an administration system maps hierarchy paths to physical paths on the server, it optionally calls the client-supplied object that implements the `IAppHostPathMapper2` interface. The implementer of this interface receives details of all mappings and can change the results of each mapping if required.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ virtual PCWSTR GetFunctionName(

The return value of the `GetFunctionName` method depends on implementation. You should use the following information as a guideline, but it may not be correct in all scenarios:

- The default implementer of the [IProtocolManager](../../web-development-reference/native-code-api-reference/iprotocolmanager-interface.md), [IPmCustomActions](../../web-development-reference/native-code-api-reference/ipmcustomactions-interface.md), [IPmHealthAndIdleMonitor](../../web-development-reference/native-code-api-reference/ipmhealthandidlemonitor-interface.md), and [IPmListenerChannelManager](../../web-development-reference/native-code-api-reference/ipmlistenerchannelmanager-interface.md) interfaces raises events when you call the [IRSCA_WorkerProcess::EnumerateAppDomains](https://msdn.microsoft.com/8be86f01-4f15-4f9c-8b65-aec64061d497) and [IRSCA_AppDomain::Unload](https://msdn.microsoft.com/f6e9a6a6-3029-4bbe-8454-b82b2e4b2bfb) methods. These methods map to the PMH_App_Domain_Enum_V1 and PMH_App_Domain_Unload_V1 values, respectively, which are returned when you call `GetFunctionName`. The parameters of this function are, in turn, returned when you call the [GetFunctionParameters](../../web-development-reference/native-code-api-reference/iglobalrscaqueryprovider-getfunctionparameters-method.md) method.
- The default implementer of the [IProtocolManager](../../web-development-reference/native-code-api-reference/iprotocolmanager-interface.md), [IPmCustomActions](../../web-development-reference/native-code-api-reference/ipmcustomactions-interface.md), [IPmHealthAndIdleMonitor](../../web-development-reference/native-code-api-reference/ipmhealthandidlemonitor-interface.md), and [IPmListenerChannelManager](../../web-development-reference/native-code-api-reference/ipmlistenerchannelmanager-interface.md) interfaces raises events when you call the `IRSCA_WorkerProcess::EnumerateAppDomains` and `IRSCA_AppDomain::Unload` methods. These methods map to the PMH_App_Domain_Enum_V1 and PMH_App_Domain_Unload_V1 values, respectively, which are returned when you call `GetFunctionName`. The parameters of this function are, in turn, returned when you call the [GetFunctionParameters](../../web-development-reference/native-code-api-reference/iglobalrscaqueryprovider-getfunctionparameters-method.md) method.

- The `IGlobalRSCAQueryProvider` implementer receives the function name and function parameter values as strings when either of the [IRSCA_AppDomain](https://msdn.microsoft.com/0ac45ca7-4e5c-4ac2-9152-42465f4511fa) events is raised, and the implementer holds references to these strings. If a string is NULL, `GetFunctionName` returns the empty string. Otherwise, `GetFunctionName` returns a pointer to this shared string.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ virtual PCWSTR GetFunctionParameters(

The return value of the `GetFunctionParameters` method depends on implementation. You should use the following information as a guideline, but it may not be correct in all scenarios:

- The default implementer of the [IProtocolManager](../../web-development-reference/native-code-api-reference/iprotocolmanager-interface.md), [IPmCustomActions](../../web-development-reference/native-code-api-reference/ipmcustomactions-interface.md), [IPmHealthAndIdleMonitor](../../web-development-reference/native-code-api-reference/ipmhealthandidlemonitor-interface.md), and [IPmListenerChannelManager](../../web-development-reference/native-code-api-reference/ipmlistenerchannelmanager-interface.md) interfaces raises events when you call the [IRSCA_WorkerProcess::EnumerateAppDomains](https://msdn.microsoft.com/8be86f01-4f15-4f9c-8b65-aec64061d497) and [IRSCA_AppDomain::Unload](https://msdn.microsoft.com/f6e9a6a6-3029-4bbe-8454-b82b2e4b2bfb) methods. These methods map to the PMH_App_Domain_Enum_V1 and PMH_App_Domain_Unload_V1 values, respectively, which are returned when you call the [GetFunctionName](../../web-development-reference/native-code-api-reference/iglobalrscaqueryprovider-getfunctionname-method.md) method. The parameters of this function are, in turn, returned when you call `GetFunctionParameters`.
- The default implementer of the [IProtocolManager](../../web-development-reference/native-code-api-reference/iprotocolmanager-interface.md), [IPmCustomActions](../../web-development-reference/native-code-api-reference/ipmcustomactions-interface.md), [IPmHealthAndIdleMonitor](../../web-development-reference/native-code-api-reference/ipmhealthandidlemonitor-interface.md), and [IPmListenerChannelManager](../../web-development-reference/native-code-api-reference/ipmlistenerchannelmanager-interface.md) interfaces raises events when you call the `IRSCA_WorkerProcess::EnumerateAppDomains` and `IRSCA_AppDomain::Unload` methods. These methods map to the PMH_App_Domain_Enum_V1 and PMH_App_Domain_Unload_V1 values, respectively, which are returned when you call the [GetFunctionName](../../web-development-reference/native-code-api-reference/iglobalrscaqueryprovider-getfunctionname-method.md) method. The parameters of this function are, in turn, returned when you call `GetFunctionParameters`.

- The `IGlobalRSCAQueryProvider` implementer receives the function name and function parameter values as strings when either of the [IRSCA_AppDomain](https://msdn.microsoft.com/0ac45ca7-4e5c-4ac2-9152-42465f4511fa) events is raised, and the implementer holds references to these strings. If a string is NULL, `GetFunctionParameters` returns the empty string. Otherwise, `GetFunctionParameters` returns a pointer to this shared string.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ virtual IMetadataInfo* GetMetadata(

1. Uses the [IMetadataInfo::GetMetaPath](../../web-development-reference/native-code-api-reference/imetadatainfo-getmetapath-method.md) method to retrieve the configuration path for the current request.

2. Uses the [IHttpServer::GetConfigObject](../../web-development-reference/native-code-api-reference/ihttpserver-getconfigobject-method.md) method to retrieve a pointer to an [INativeConfigurationSystem](https://msdn.microsoft.com/ef29f2da-90b4-be7d-e59b-83fa1799f477) interface.
2. Uses the [IHttpServer::GetConfigObject](../../web-development-reference/native-code-api-reference/ihttpserver-getconfigobject-method.md) method to retrieve a pointer to an `INativeConfigurationSystem` interface.

3. Passes the configuration path for the current request to the [INativeConfigurationSystem::GetConfigSection](https://msdn.microsoft.com/ad4c47fd-a00e-eb0e-f181-0cb41e98c89d) method.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ virtual PCWSTR GetMetaPath(

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

2. Uses the [IHttpServer::GetConfigObject](../../web-development-reference/native-code-api-reference/ihttpserver-getconfigobject-method.md) method to retrieve a pointer to an [INativeConfigurationSystem](https://msdn.microsoft.com/ef29f2da-90b4-be7d-e59b-83fa1799f477) interface.
2. Uses the [IHttpServer::GetConfigObject](../../web-development-reference/native-code-api-reference/ihttpserver-getconfigobject-method.md) method to retrieve a pointer to an `INativeConfigurationSystem` interface.

3. Passes the configuration path for the current request to the [INativeConfigurationSystem::GetConfigSection](https://msdn.microsoft.com/ad4c47fd-a00e-eb0e-f181-0cb41e98c89d) method.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ struct IProcessHostSupportFunctions : IUnknown
|[IProcessHostSupportFunctions::GetAppHostConfigFilename](../../web-development-reference/native-code-api-reference/iprocesshostsupportfunctions-getapphostconfigfilename-method.md)|Retrieves the application host configuration (.config) file path.|
|[IProcessHostSupportFunctions::GetApplicationProperties](../../web-development-reference/native-code-api-reference/iprocesshostsupportfunctions-getapplicationproperties-method.md)|Retrieves the properties from the application's metabase.|
|[IProcessHostSupportFunctions::GetConfigToken](../../web-development-reference/native-code-api-reference/iprocesshostsupportfunctions-getconfigtoken-method.md)|Retrieves a Windows security token for the specified application’s root directory.|
|[IProcessHostSupportFunctions::GetNativeConfigurationSystem](../../web-development-reference/native-code-api-reference/iprocesshostsupportfunctions-getnativeconfigurationsystem-method.md)|Retrieves the [INativeConfigurationSystem](https://msdn.microsoft.com/ef29f2da-90b4-be7d-e59b-83fa1799f477) interface pointer.|
|[IProcessHostSupportFunctions::GetNativeConfigurationSystem](../../web-development-reference/native-code-api-reference/iprocesshostsupportfunctions-getnativeconfigurationsystem-method.md)|Retrieves the `INativeConfigurationSystem` interface pointer.|
|[IProcessHostSupportFunctions::GetRootWebConfigFilename](../../web-development-reference/native-code-api-reference/iprocesshostsupportfunctions-getrootwebconfigfilename-method.md)|Retrieves the physical path for the ApplicationHost.config file.|
|[IProcessHostSupportFunctions::MapPath](../../web-development-reference/native-code-api-reference/iprocesshostsupportfunctions-mappath-method.md)|Retrieves the physical path of a relative URL.|

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,5 +19,5 @@ This section of the IIS SDK discusses the APIs that are available to native-code
Describes the API that developers use to extend the functionality of IIS.

## See Also
[Web Server Development Reference](https://msdn.microsoft.com/library/b1469482-2635-48f0-bf4b-aabccb7c0abd)
[Managed-Code API Reference](https://msdn.microsoft.com/library/f18eb4cd-8a41-400b-b544-8b5761bd6b63)
[Web Server Development Reference](https://learn.microsoft.com/iis/web-development-reference/native-code-development-overview/native-code-development-overview)
[Managed-Code API Reference](https://learn.microsoft.com/iis/get-started/whats-new-in-iis-10-version-1709/new-features-introduced-in-iis-10-1709)