수신기 어댑터 <추가>

개요

<add><listenerAdapters> 요소는 WAS(Windows Process Activation Service)에서 수신기 서비스와 통신하는 데 사용할 수 있는 HTTP가 아닌 수신기 어댑터에 대한 구성 설정을 지정합니다.

호환성

버전 참고
IIS 10.0 <add> 요소가 IIS 10.0에서 수정되지 않았습니다.
IIS 8.5 <add> 요소가 IIS 8.5에서 수정되지 않았습니다.
IIS 8.0 <add> 요소가 IIS 8.0에서 수정되지 않았습니다.
IIS 7.5 <add> 요소가 IIS 7.5에서 수정되지 않았습니다.
IIS 7.0 <add> 요소의 <listenerAdapters> 요소는 IIS 7.0에서 도입되었습니다.
IIS 6.0 해당 없음

설치 프로그램

<add> 요소의 <listenerAdapters> 요소는 IIS 7의 기본 설치에 포함됩니다.

방법

IIS 7용 수신기 어댑터를 추가하기 위한 사용자 인터페이스가 없습니다. 수신기 어댑터를 프로그래밍 방식으로 추가하는 방법에 대한 예제는 이 문서의 코드 샘플 섹션을 참조하세요.

구성

특성

attribute Description
identity 선택적 문자열 특성입니다.

로컬 계정 이름, 도메인 계정 또는 기본 제공 계정을 지정합니다. ID는 수신기 서비스와 수신기 어댑터 간의 WAS 통신 채널을 보호하는 데 사용됩니다.
name 필수 문자열 특성입니다.

WAS가 수신기 서비스를 연결하는 수신기 어댑터의 고유한 이름을 지정합니다.
protocolManagerDll 선택적 문자열 특성입니다.

수신기 어댑터의 코드를 포함하는 DLL의 정규화된 경로 또는 짧은 이름을 지정합니다. protocolManagerDllInitFunction에 지정된 함수를 호출하려면 DLL 유형에 따라 표준 검색 프로시저를 사용하여 디스크에서 DLL을 찾아야 합니다.
protocolManagerDllInitFunction 선택적 문자열 특성입니다.

사용자 지정 수신기 어댑터 코드에서 호출할 함수의 이름을 지정합니다. protocolManagerDll 특성에 지정된 DLL에는 protocolManagerDllInitFunction 특성에 지정된 함수가 포함되어야 합니다.

참고: 이 특성은 대/소문자를 구분합니다. 초기화 함수의 이름을 지정할 때 올바른 대/소문자를 사용해야 합니다.

자식 요소

없음

구성 샘플

다음 구성 샘플에서는 Gopher 프로토콜 공급자에 대한 수신기 어댑터를 추가하고 DLL의 이름과 초기화 함수를 모두 지정합니다.

<system.applicationHost>
   <listenerAdapters>
      <add name="gopher"
         protocolManagerDll="%SystemRoot%\system32\inetsrv\gophersvc.dll"
         protocolManagerDllInitFunction="GopherInit" />
   </listenerAdapters>
</system.applicationHost>

샘플 코드

다음 코드 샘플은 Gopher 프로토콜 공급자에 대한 수신기 어댑터를 추가하고 DLL의 이름과 초기화 함수를 모두 지정합니다.

AppCmd.exe

appcmd.exe set config -section:system.applicationHost/listenerAdapters /+"[name='gopher',protocolManagerDll='%SystemRoot%\system32\inetsrv\gophersvc.dll',protocolManagerDllInitFunction='GopherInit']" /commit:apphost

참고

AppCmd.exe 사용하여 이러한 설정을 구성할 때 commit 매개 변수 apphost 를 로 설정해야 합니다. 그러면 구성 설정이 ApplicationHost.config 파일의 적절한 위치 섹션에 커밋됩니다.

C#

using System;
using System.Text;
using Microsoft.Web.Administration;

internal static class Sample
{
   private static void Main()
   {
      using (ServerManager serverManager = new ServerManager())
      {
         Configuration config = serverManager.GetApplicationHostConfiguration();
         ConfigurationSection listenerAdaptersSection = config.GetSection("system.applicationHost/listenerAdapters");
         ConfigurationElementCollection listenerAdaptersCollection = listenerAdaptersSection.GetCollection();

         ConfigurationElement addElement = listenerAdaptersCollection.CreateElement("add");
         addElement["name"] = @"gopher";
         addElement["protocolManagerDll"] = @"%SystemRoot%\system32\inetsrv\gophersvc.dll";
         addElement["protocolManagerDllInitFunction"] = @"GopherInit";
         listenerAdaptersCollection.Add(addElement);

         serverManager.CommitChanges();
      }
   }
}

VB.NET

Imports System
Imports System.Text
Imports Microsoft.Web.Administration

Module Sample

   Sub Main()
      Dim serverManager As ServerManager = New ServerManager
      Dim config As Configuration = serverManager.GetApplicationHostConfiguration
      Dim listenerAdaptersSection As ConfigurationSection = config.GetSection("system.applicationHost/listenerAdapters")
      Dim listenerAdaptersCollection As ConfigurationElementCollection = listenerAdaptersSection.GetCollection

      Dim addElement As ConfigurationElement = listenerAdaptersCollection.CreateElement("add")
      addElement("name") = "gopher"
      addElement("protocolManagerDll") = "%SystemRoot%\system32\inetsrv\gophersvc.dll"
      addElement("protocolManagerDllInitFunction") = "GopherInit"
      listenerAdaptersCollection.Add(addElement)

      serverManager.CommitChanges()
   End Sub

End Module

JavaScript

var adminManager = new ActiveXObject('Microsoft.ApplicationHost.WritableAdminManager');
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST";
var listenerAdaptersSection = adminManager.GetAdminSection("system.applicationHost/listenerAdapters", "MACHINE/WEBROOT/APPHOST");
var listenerAdaptersCollection = listenerAdaptersSection.Collection;

var addElement = listenerAdaptersCollection.CreateNewElement("add");
addElement.Properties.Item("name").Value = "gopher";
addElement.Properties.Item("protocolManagerDll").Value = "%SystemRoot%\\system32\\inetsrv\\gophersvc.dll";
addElement.Properties.Item("protocolManagerDllInitFunction").Value = "GopherInit";
listenerAdaptersCollection.AddElement(addElement);

adminManager.CommitChanges();

VBScript

Set adminManager = WScript.CreateObject("Microsoft.ApplicationHost.WritableAdminManager")
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST"
Set listenerAdaptersSection = adminManager.GetAdminSection("system.applicationHost/listenerAdapters", "MACHINE/WEBROOT/APPHOST")
Set listenerAdaptersCollection = listenerAdaptersSection.Collection

Set addElement = listenerAdaptersCollection.CreateNewElement("add")
addElement.Properties.Item("name").Value = "gopher"
addElement.Properties.Item("protocolManagerDll").Value = "%SystemRoot%\system32\inetsrv\gophersvc.dll"
addElement.Properties.Item("protocolManagerDllInitFunction").Value = "GopherInit"
listenerAdaptersCollection.AddElement(addElement)

adminManager.CommitChanges()