Gewusst wie: Erstellen einer Hostanwendung
Durch die Verwendung einer Konfigurationsdatei können Sie u. a. die Remotekonfiguration ändern, ohne die ausführbare Datei neu zu kompilieren. Ausführliche Informationen zur Konfiguration der .NET Remoting-Infrastruktur finden Sie unter Remoting Settings Schema.
So wird eine einfache Hostanwendungsdomäne implementiert, die eine Konfigurationsdatei verwendet
Erstellen Sie für die Remoteklasse eine Konfigurationsdatei. Die Hostanwendung muss die Konfigurationsdatei finden können, um die Konfiguration für die Remoteklasse zu laden. Deshalb sollte die Konfigurationsdatei in demselben Verzeichnis wie die Hostanwendung gespeichert werden. Andernfalls wird sie nicht gefunden, und es wird eine Ausnahme ausgelöst. Mit dem folgenden Code wird die Konfigurationsdatei
Listener.exe.config
für eine Hostanwendungsdomäne veranschaulicht.<configuration> <system.runtime.remoting> <application> <service> <wellknown mode="Singleton" type="RemotableType, RemotableType" objectUri="RemotableType.rem" /> </service> <channels> <channel ref="http" port="8989"/> </channels> </application> </system.runtime.remoting> </configuration>
Importieren Sie den System.Runtime.Remoting-Namespace.
Imports System.Runtime.Remoting
using System; using System.Runtime.Remoting;
Erstellen Sie für die Remoteklasse eine Konfigurationsdatei.
Public Class Listener Public Shared Sub Main() RemotingConfiguration.Configure("Listener.exe.config") Console.WriteLine("Listening for requests. Press Enter to exit...") Console.ReadLine() End Sub 'Main End Class 'Listener
public class Listener{ public static void Main(){ RemotingConfiguration.Configure("Listener.exe.config"); } }
Um diese Klasse mithilfe der Befehlszeilentools von .NET Framework SDK in eine ausführbare Host- bzw. Listenerdatei zu kompilieren, speichern Sie sie als
Listener
.Spracherweiterung (oder verwenden Sie einen anderen Dateinamen Ihrer Wahl, wobei die Spracherweiterung für die jeweils zu kompilierende Sprache steht). Speichern Sie die Datei in demselben Verzeichnis, in dem auch eine Kopie vonRemotableType.dll
gespeichert wurde, die im Thema Gewusst wie: Erstellen eines remotefähigen Typs erstellt wurde. Geben Sie an der Eingabeaufforderung in diesem Verzeichnis folgenden Befehl ein:vbc /r:RemotableType.dll Listener.vb
csc /noconfig /r:RemotableType.dll Listener.cs
Beispiel
' Listener.vb
Imports System
Imports System.Runtime.Remoting
Public Class Listener
Public Shared Sub Main()
RemotingConfiguration.Configure("Listener.exe.config")
Console.WriteLine("Listening for requests. Press Enter to exit...")
Console.ReadLine()
End Sub 'Main
End Class 'Listener
// Listener.cs
using System;
using System.Runtime.Remoting;
public class Listener{
public static void Main(){
RemotingConfiguration.Configure("Listener.exe.config");
Console.WriteLine("Listening for requests. Press Enter to exit...");
Console.ReadLine();
}
}
Siehe auch
Aufgaben
Gewusst wie: Erstellen einer Hostanwendung
Referenz
Konzepte
Konfiguration von Remoteanwendungen
Serveraktivierung