如何:安装和配置 WCF 激活组件

本主题介绍在 Windows Vista 上设置 Windows Process Activation Service (WAS) 来托管不通过 HTTP 网络协议进行通信的 Windows Communication Foundation (WCF) 服务所需的步骤。 下面的部分略述此配置的步骤:

  • 安装(或确认安装)WCF 激活组件。

  • 配置 WAS 以支持非 HTTP 协议。 下面的过程对 Windows Vista 进行配置以激活 TCP。

在安装并配置 WAS 后,请参阅如何:在 WAS 中托管 WCF 服务,了解创建公开非 HTTP 终结点(此终结点采用 WAS)的 WCF 服务的过程。

安装 WCF 非 HTTP 激活组件

  1. 单击“开始”按钮,然后单击“控制面板”。

  2. 单击“程序”,然后单击“程序和功能”

  3. 在“任务”菜单上,单击“打开或关闭 Windows 功能”。

  4. 找到 WinFX 节点,选中该节点,然后展开它。

  5. 选中“WCF 非 HTTP 激活组件”框并保存设置。

配置 WAS 以支持 TCP 激活

  1. 若要支持 net.tcp 激活,必须首先将默认的网站绑定到一个 net.tcp 端口。 可以通过使用随 IIS 7.0 管理工具集安装的 Appcmd.exe 来执行此操作。 在管理员级别命令提示符窗口中,运行以下命令。

    %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
    

    备注

    此命令是单行文本。 此命令可以实现能够使用 http://localhost/<WCF Application>net.tcp://localhost/<WCF Application> 访问 /<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:*']
    

    备注

    此命令是单行文本。

另请参阅