Partager via


Comment : Créer une application cliente

Pour créer un client du type distant défini dans Comment : Créer un type accessible à distance et hébergé par l'application créée dans Création d'une application hôte, votre application doit s'inscrire en tant que client pour cet objet distant, puis l'appeler comme s'il se trouvait dans le domaine d'application du client. Le système .NET Remoting intercepte vos appels clients, les transfère à l'objet distant et retourne les résultats à votre client. La procédure de code suivante décrit comment créer un client d'accès distant simple.

Pour créer un client d'accès distant simple

  1. Importez l'espace de noms System.Runtime.Remoting.

  2. Créez un fichier de configuration client pour que l'application cliente puisse localiser l'objet distant, puis enregistrez le fichier dans le même dossier que l'application cliente. Par exemple, le fichier de configuration suivant indique au système d'accès distant que les informations de type de l'objet distant RemotableType se trouvent dans l'assembly RemotableType et que le client doit tenter de créer et d'utiliser un objet RemotableType situé à l'adresse https://localhost:8989/RemotableType.rem.

    <configuration>
       <system.runtime.remoting>
          <application>
             <client>
                <wellknown 
                   type="RemotableType, RemotableType"
                   url="https://localhost:8989/RemotableType.rem"
                />
             </client>
          </application>
       </system.runtime.remoting>
    </configuration>
    

    Pour plus d'informations sur l'attribut URL dans ce fichier de configuration, voir URL d'activation. Si vous voulez exécuter cette application sur un réseau, vous devez remplacer "localhost" dans la configuration du client par le nom de l'ordinateur distant.

    Notes

    Bien que le fichier de configuration précédent ne contienne que peu de paramètres, la plupart des problèmes d'utilisation de .NET Remoting surviennent parce que certains de ces paramètres sont incorrects ou ne correspondent pas aux paramètres de configuration des applications clientes. Il est courant de faire une faute de frappe dans un nom, d'oublier un port ou de négliger un attribut. Si vous rencontrez des problèmes avec votre application distante, commencez par vérifier vos paramètres de configuration.

  3. Enregistrez l'application cliente en tant que Client.extension-langage (ou choisissez un autre nom de fichier, où l'extension de langage correspond au langage que vous souhaitez compiler). Enregistrez le fichier dans le même répertoire que celui dans lequel vous avez enregistré une copie de RemotableType.dll créée dans la rubrique Comment : Créer un type accessible à distance.

    Notes

    L'application cliente ne doit pas être enregistrée dans le répertoire contenant l'application Listener.exe. Si c'est le cas, vous n'aurez pas la certitude de recevoir et d'utiliser une référence distante, car une résolution d'assembly et de type peut se produire lorsque des applications se trouvent dans le même répertoire.

  4. Compilez l'application cliente ou l'exécutable appelant à l'aide des outils de ligne de commande fournis avec le Kit de développement .NET Framework SDK. Par exemple, pour compiler l'application cliente Client.extension-langage, à l'invite de commande, remplacez le répertoire par le dossier dans lequel est enregistrée l'application cliente, puis tapez la commande suivante :

    vbc /r:RemotableType.dll Client.vb
    
    csc /noconfig /r:RemotableType.dll Client.cs
    

Exemple

' Client.vb 
Imports System
Imports System.Runtime.Remoting

Public Class Client
   Public Shared Sub Main()
      RemotingConfiguration.Configure("Client.exe.config")
      Dim remoteObject As New RemotableType()
      Console.WriteLine(remoteObject.StringMethod())
   End Sub 'Main
End Class 'Client
// Client.cs 
using System;
using System.Runtime.Remoting;

public class Client{

   public static void Main(){
      RemotingConfiguration.Configure("Client.exe.config");
      RemotableType remoteObject = new RemotableType();
      Console.WriteLine(remoteObject.StringMethod());
   }
}

Voir aussi

Tâches

Comment : Créer une application hôte

Référence

Remoting Settings Schema

Concepts

Configuration d'applications distantes
Activation par serveur

Autres ressources

Création d'une application .NET Framework Remoting de base