Procedimiento de instalación única para los ejemplos de Windows Communication Foundation

La mayoría de los ejemplos de Windows Communication Foundation (WCF) se hospedan en Internet Information Services (IIS) y se ejecutan desde un directorio virtual común. Este procedimiento de instalación única crea una carpeta en el disco y también agrega un directorio virtual en IIS denominado ServiceModelSamples.

El directorio virtual ServiceModelSamples se utiliza para compilar y ejecutar todos los ejemplos que usan un servicio hospedado en IIS. Éste es el único directorio virtual que se exige para ejecutar los ejemplos. Al compilar un ejemplo, se reemplazará cualquier servicio implementado anteriormente en este directorio virtual; solo se implementará y estará disponible en este directorio virtual el ejemplo creado más recientemente.

Nota

  • Debe ejecutar todos los comandos con una cuenta de administrador local. Si está utilizando Windows 7, Windows Vista o Windows Server 2008 R2, también debe ejecutar el símbolo del sistema con privilegios elevados. Para realizar esta acción, haga clic con el botón secundario en el icono del símbolo del sistema y, a continuación, haga clic en Ejecutar como administrador.
  • Todos los comandos de este artículo se deben ejecutar en un símbolo del sistema que tenga la configuración de ruta de acceso adecuada. La manera más fácil de asegurarse de esto es usar el Símbolo del sistema para desarrolladores de Visual Studio.

Procedimiento de instalación única para los ejemplos de WCF

  1. Asegúrese de que ASP.NET esté configurado. Para más información sobre cómo configurar ASP.NET, consulte Instrucciones de hospedaje de Internet Information Service.

  2. Asegúrese de que .NET Framework 4 está instalado. Busque la versión v4.0 (o posterior) en el siguiente directorio: \Windows\Microsoft.NET\Framework

  3. Asegúrese de que está instalado Visual Studio 2012 o posterior, o bien el sistema operativo es Windows Server 2008 SP2 o posterior.

  4. Ejecute los comandos siguientes: Para más información acerca de por qué se deben ejecutar estos comandos, consulte Error del servicio hospedado por IIS.

    Advertencia

    Si se reinstala IIS, los siguientes comandos deberán ejecutarse de nuevo.

    "%WINDIR%\Microsoft.Net\Framework\v4.0.30319\aspnet_regiis" –i –enable
    "%WINDIR%\Microsoft.Net\Framework\v4.0.30319\ServiceModelReg.exe" -r
    

    Advertencia

    Al ejecutar el comando aspnet_regiis –i –enable, hará que se ejecute el grupo de aplicaciones predeterminadas con .NET Framework 4, lo que puede generar problemas de incompatibilidad con otras aplicaciones en el mismo equipo.

  5. Siga el procedimiento de Instrucciones de firewall para habilitar los puertos usados en los ejemplos.

  6. Ejecute el archivo por lotes Setupvroot. Hay que seguir estos pasos:

    • Se crea un directorio virtual en IIS denominado ServiceModelSamples.

    • Los nuevos directorios del disco se crean con los nombres %SystemDrive%\Inetpub\wwwroot\ServiceModelSamples y %SystemDrive%\Inetpub\wwwroot\ServiceModelSamples\bin.

    Si prefiere configurar estos directorios manualmente, consulte Instrucciones de configuración del directorio virtual. Para revertir todos los cambios efectuados en este paso, ejecute cleanupvroot.bat después de que termine de utilizar los ejemplos.

    Nota

    Este procedimiento solo se debe realizar una vez en un equipo, a menos que ejecute cleanupvroot.bat.

  7. Debe conceder permiso para modificar %SystemDrive%\inetpub\wwwroot a la cuenta con la que se van a compilar los ejemplos y al usuario del Servicio de red. Mientras se compilan, algunos ejemplos hospedados en Web podrían intentar copiar los archivos binarios compilados en la ubicación mencionada previamente y, si no se han establecido los permisos adecuados, la compilación se interrumpirá. Alternativamente puede dejar los permisos tal como están y ejecutar el símbolo de sistema de SDK o de Visual Studio (2012) como administrador, o bien compilar los ejemplos en Visual Studio 2012, también como administrador.

    Nota

    Si no se completa este paso, todos los ejemplos hospedados en IIS generarán errores al compilarse. Asegúrese de que ha establecido los permisos correctamente o ejecute el símbolo del sistema de SDK y Visual Studio como administrador.

  8. Cree un directorio C:\logs en el equipo porque en algunos ejemplos podría esperarse que exista. Asegúrese de que la cuenta adecuada tiene concedido acceso de escritura en esta carpeta. En Windows 7, Windows Vista y Windows Server 2008 R2, esta cuenta es Network Service (Servicio de red). Para Windows Server 2008, la cuenta es NT Authority\Network Service. Para Windows XP y Windows Server 2003, la cuenta es ASPNET.

  9. Ejecute el archivo Setupcerttool.bat. Este script hace las siguientes tareas:

    • Compila la herramienta FindPrivateKey.

    • Crea un directorio denominado %ProgramFiles%\ServiceModelSampleTools.

    • Copia la nueva herramienta FindPrivateKey en este directorio.

    Esta herramienta se requiere en los ejemplos que utilizan certificados y se hospedan en IIS.

    Nota

    Por motivos de seguridad, no olvide quitar la definición del directorio virtual y los permisos concedidos en los pasos de instalación anteriores cuando termine con los ejemplos. Para ello ejecute el archivo por lotes denominado cleanupvroot.bat.

  10. Los ejemplos autohospedados (no se hospedan en IIS) requieren permiso para registrar las direcciones HTTP en el equipo a fin de realizar escuchas. El permiso para una reserva de espacio de nombres HTTP procede de la cuenta de usuario utilizada para ejecutar el ejemplo. De forma predeterminada, las cuentas de administrador tienen el permiso para registrar cualquier dirección HTTP. Las cuentas de usuario no administrador deben tener concedido permiso para los espacios de nombres HTTP usados por los ejemplos. Para obtener más información sobre cómo configurar las reservas de espacio de nombres, vea Configuración de HTTP y HTTPS.

  11. Algunos ejemplos requieren Message Queuing. Consulte Instalación de Message Queue Server (MSMQ) para obtener instrucciones de la instalación.

    Nota

    Asegúrese de iniciar el servicio de MSMQ antes de ejecutar cualquier ejemplo que requiera Message Queuing.

  12. En algunos ejemplos se requieren los certificados. Vea Instrucciones de instalación del certificado de servidor de Internet Information Services (IIS).