Procédure d'installation unique pour les exemples Windows Communication Foundation

La plupart des exemples WCF (Windows Communication Foundation) sont hébergés dans IIS (Internet Information Services) et sont exécutés à partir d’un répertoire virtuel commun. Cette procédure d’installation unique crée un dossier sur le disque ; elle ajoute aussi un répertoire virtuel, nommé ServiceModelSamples, à IIS.

Le répertoire virtuel ServiceModelSamples est utilisé pour générer et exécuter tous les exemples qui utilisent un service hébergé par IIS. Il s'agit du seul répertoire virtuel requis pour exécuter les exemples. La génération d'un exemple remplace tout service déployé précédemment dans ce répertoire ; seul le dernier exemple généré sera déployé et disponible dans ce répertoire virtuel.

Notes

  • Vous devez exécuter toutes les commandes sous un compte d'administrateur local. Si vous utilisez Windows 7, Windows Vista ou Windows Server 2008 R2, vous devez également exécuter l’invite de commandes avec des privilèges élevés. Pour ce faire, cliquez avec le bouton droit sur l’icône de l’invite de commandes, puis cliquez sur Exécuter en tant qu’administrateur.
  • Toutes les commandes qui figurent dans cet article doivent être exécutées à une invite de commandes disposant des paramètres de chemin appropriés. Le moyen le plus simple de vous en assurer consiste à utiliser l’Invite de commandes développeur pour Visual Studio.

Procédure d'installation unique pour les exemples WCF

  1. Vérifiez qu’ASP.NET est configuré. Pour plus d’informations sur la configuration d’ASP.NET, consultez Instructions relatives à l’hébergement dans les Services Internet (IIS).

  2. Vérifiez que .NET Framework 4+ est installé. Recherchez la version 4.0 (ou ultérieure) dans le répertoire suivant : \Windows\Microsoft.NET\Framework

  3. Vérifiez que Visual Studio 2012 ou version ultérieure est installé, ou que votre système d’exploitation est Windows Server 2008 SP2 ou version ultérieure.

  4. Exécutez les commandes suivantes : Pour plus d’informations sur la raison pour laquelle ces commandes doivent être exécutées, consultez Échec d’un service hébergé par IIS.

    Avertissement

    Si vous avez réinstallé IIS, réexécutez les commandes suivantes.

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

    Avertissement

    L’exécution de la commande aspnet_regiis –i –enable entraîne l’exécution du pool d’applications par défaut à l’aide de .NET Framework 4, ce qui peut provoquer des problèmes d’incompatibilité pour d’autres applications installées sur le même ordinateur.

  5. Suivez les instructions Instructions du pare-feu pour activer les ports utilisés par les exemples.

  6. Exécutez le fichier de commandes Setupvroot.bat. Les étapes à exécuter sont les suivantes :

    • Un répertoire virtuel, nommé ServiceModelSamples, est créé dans IIS.

    • Des répertoires de disque nommés %SystemDrive%\Inetpub\wwwroot\ServiceModelSamples et %SystemDrive%\Inetpub\wwwroot\ServiceModelSamples\bin sont créés.

    Si vous préférez configurer ces répertoires manuellement, consultez les Instructions d’installation du répertoire virtuel. Pour annuler toutes les modifications apportées lors de cette étape, exécutez cleanupvroot.bat une fois que vous aurez terminé d’utiliser les exemples.

    Notes

    Cette procédure doit être effectuée une fois seulement sur un ordinateur, sauf si vous exécutez cleanupvroot.bat.

  7. Vous devez accorder au compte utilisé pour générer les exemples et à l'utilisateur du service réseau des autorisations de modification sur le répertoire %SystemDrive%\inetpub\wwwroot. Lors de la génération, certains exemples hébergés par le Web peuvent tenter de copier les fichiers binaires compilés dans l'emplacement mentionné précédemment. Si vous n'avez pas défini les autorisations requises, leur génération échoue. Vous pouvez également laisser les autorisations telles quelles et exécuter l’invite de commandes du kit SDK ou de Visual Studio (2012) en tant qu’administrateur, ou générer les exemples dans Visual Studio 2012, également en tant qu’administrateur.

    Notes

    Si vous ne procédez pas à cette étape, tous les exemples hébergés par IIS échouent lors de la génération. Veillez à définir les autorisations correctement, ou à exécuter l’invite de commandes du kit SDK et de Visual Studio en tant qu’administrateur.

  8. Créez sur l’ordinateur un répertoire C:\logs, car certains exemples peuvent en avoir besoin. Assurez-vous que le compte approprié dispose d’un accès en écriture sur ce dossier. Pour Windows 7, Windows Vista et Windows Server 2008 R2, ce compte est Service réseau. Pour Windows Server 2008, il s’agit du compte NT Authority\Network Service. Pour Windows XP et Windows Server 2003, il s’agit du compte ASPNET.

  9. Exécutez le fichier Setupcerttool.bat. Ce script effectue les tâches suivantes :

    • Il génère l’outil FindPrivateKey

    • Il crée un répertoire nommé %ProgramFiles%\ServiceModelSampleTools

    • Il copie le nouvel outil FindPrivateKey dans ce répertoire

    Cet outil est requis pour les exemples qui utilisent des certificats et sont hébergés dans IIS.

    Notes

    Pour des raisons de sécurité, n’oubliez pas de supprimer la définition de répertoire virtuel et les autorisations accordées au cours des étapes d’installation ci-dessus lorsque vous en avez terminé avec les exemples en exécutant le fichier de commandes cleanupvroot.bat.

  10. Les exemples auto-hébergés (non hébergés dans IIS) doivent être autorisés à enregistrer des adresses HTTP sur l'ordinateur pour pouvoir écouter les données. Ces autorisations (qui permettent de réserver les espaces de noms HTTP) dépendent directement des autorisations dont les comptes d'utilisateurs utilisés pour exécuter ces exemples disposent. Par défaut, les comptes d'administrateur sont autorisés à enregistrer n'importe quelle adresse HTTP. L'autorisation pour les espaces de noms HTTP utilisés par les exemples doit être accordée aux comptes qui ne sont pas administrateur. Pour plus d’informations sur la configuration des réservations d’espaces de noms, consultez Configuration de HTTP et HTTPS.

  11. Certains exemples nécessitent Message Queuing. Pour obtenir des instructions d’installation, consultez Installation de Message Queuing (MSMQ).

    Notes

    Veillez à démarrez le service MSMQ avant d'exécuter un exemple qui requiert Message Queuing.

  12. Certains exemples requièrent des certificats. Voir Instructions d'installation du certificat de serveur des services Internet (IIS).