Поделиться через


Практическое руководство. Установка и настройка компонентов активации WCF

В этом разделе описаны шаги, необходимые для настройки службы активации процесса Windows (также известной как WAS) в Windows Vista для размещения служб Windows Communication Foundation (WCF), которые не взаимодействуют по сетевым протоколам HTTP. Настройка предполагает следующие шаги.

  • Установите (или подтвердите установку) компонентов активации WCF.

  • Настройте WAS на поддержку отличных от HTTP протоколов. Следующая процедура настраивает Windows Vista для активации TCP.

После установки и настройки WAS см. инструкции по размещению службы WCF в WAS для создания службы WCF, которая предоставляет конечную точку, не являющуюся http, которая использует WAS .

Установка компонентов активации WCF, работающих по отличному от HTTP протоколу

  1. Нажмите кнопку "Пуск", а затем щелкните панель управления.

  2. Щелкните "Программы" и выберите пункт "Программы и компоненты".

  3. В меню "Задачи" нажмите кнопку "Включить или отключить функции Windows".

  4. Найдите узел WinFX, выберите и разверните его.

  5. Выберите поле компонентов активации WCF, отличных от HTTP, и сохраните этот параметр.

Настройка WAS на поддержку протокола TCP

  1. Для поддержки активации по net.tcp веб-узел по умолчанию необходимо сначала привязать к порту net.tcp. Это можно сделать с помощью Appcmd.exe, установленной с набором инструментов управления IIS 7.0. В окне командной строки с правами администратора выполните следующую команду.

    %windir%\system32\inetsrv\appcmd.exe set site "Default Web Site" -+bindings.[protocol='net.tcp',bindingInformation='808:*']
    

    Примечание.

    Эта команда представляет собой одну строку текста. Она добавляет привязку узла к протоколу net.tcp в веб-узел по умолчанию, ожидающему передачи данных по протоколу TCP на порту 808 с любым именем узла.

  2. Несмотря на то что все приложения в узле имеют общую привязку к протоколу net.tcp, включать поддержку net.tcp можно для каждого приложения отдельно. Для включения протокола net.tcp для данного приложения необходимо выполнить следующую команду из командной строки с правами администратора.

    %windir%\system32\inetsrv\appcmd.exe set app
    "Default Web Site/<WCF Application>" /enabledProtocols:http,net.tcp
    

    Примечание.

    Эта команда представляет собой одну строку текста. Эта команда позволяет приложению /<WCF Application> получать доступ с помощью обоих http://localhost/<WCF Application> и net.tcp://localhost/<WCF Application>.

    Удалите привязку сайта к протоколу net.tcp, добавленную ранее для данного образца.

    Для удобства два нижеописанных действия выполняются в пакетом файле RemoveNetTcpSiteBinding.cmd, расположенном в каталоге с образцами.

    1. Удалите протокол net.tcp из списка разрешенных протоколов, выполнив следующую команду в окне командной строки с правами администратора.

      %windir%\system32\inetsrv\appcmd.exe set app
      "Default Web Site/servicemodelsamples<WCF Application>" " /enabledProtocols:http
      

      Примечание.

      Эта команда представляет собой одну строку текста.

    2. Удалите привязку узла к протоколу net.tcp, выполнив следующую команду в окне командной строки с повышенными привилегиями:

      %windir%\system32\inetsrv\appcmd.exe set site "Default Web Site"
      --bindings.[protocol='net.tcp',bindingInformation='808:*']
      

      Примечание.

      Эта команда представляет собой одну строку текста.

Удаление протокола net.tcp из списка разрешенных протоколов

  1. Для того чтобы удалить протокол net.tcp из списка разрешенных протоколов, необходимо выполнить следующую команду в окне командной строки с правами администратора.

    %windir%\system32\inetsrv\appcmd.exe set app "Default Web Site/servicemodelsamples<WCF Application>" " /enabledProtocols:http
    

    Примечание.

    Эта команда представляет собой одну строку текста.

Удаление привязки узла к протоколу net.tcp

  1. Для того чтобы удалить привязку узла к протоколу net.tcp, необходимо выполнить следующую команду в окне командной строки с правами администратора:

    %windir%\system32\inetsrv\appcmd.exe set site "Default Web Site"
    -bindings.[protocol='net.tcp',bindingInformation='808:*']
    

    Примечание.

    Эта команда представляет собой одну строку текста.

См. также