Freigeben über


Erstellen einer Hostanwendung

Die RemotableType -Klasse, die im Thema Gewusst wie: Erstellen eines remotefähigen Typs definiert wurde, stellt keine Besonderheit dar. Um Objekten in anderen Anwendungsdomänen die Remoteerstellung von Instanzen dieses Objekts zu ermöglichen, müssen Sie eine Host- oder Listeneranwendung erstellen, die zwei Vorgänge ausführen kann:

  • Auswählen und Registrieren eines Channels, bei dem es sich um ein Objekt handelt, das die Netzwerkprotokolle und Serialisierungsformate für Sie verarbeitet.

  • Registrieren Ihres Typs beim .NET Remoting-System, sodass Anforderungen für den Typ mithilfe des Channels überwacht werden können.

Zu .NET Framework gehören zwei Standardchannels: HttpChannel (verwendet SOAP-Formatierung) und TcpChannel (verwendet binäre Formatierung). HttpChannel eignet sich als Ausgangspunkt, da in einigen Szenarios dieser Channel mit Firewalls verwendet werden kann, ohne einen Port zu öffnen. Zudem unterstützt der Channel die Standardprotokolle für Sicherheit und Authentifizierung. Weitere Informationen zum Auswählen von geeigneten Channels für das jeweilige Szenario finden Sie unter Channel.

Sie können Listeneranwendungen mit beliebigen Typen von Anwendungsdomänen erstellen. Dabei kann es sich im eine Windows Forms-Anwendung, eine ASP.NET-Webanwendung, eine Konsolenanwendung, einen Windows-Dienst (auch als Windows NT-Dienst bezeichnet) oder eine beliebige andere verwaltete Anwendungsdomäne handeln. Da die Remotekonfiguration auf Basis der jeweiligen Anwendungsdomäne vorgenommen wird, muss die Anwendungsdomäne für die Überwachung von Anforderungen ausgeführt werden.

Hinweis

Im Gegensatz zu COM wird beim Remoting die Host- bzw. Serveranwendung nicht automatisch gestartet. Dies ist ein wesentlicher Unterschied zwischen .NET Remoting und der Remoteaktivierung in COM.

Die Konfiguration kann programmgesteuert oder unter Verwendung einer Anwendungs- bzw. Computerkonfigurationsdatei erfolgen.

Das Remotingsystem verwendet die Informationen in dieser Datei zum Überwachen und Weiterleiten von Remoteanforderungen für eine Instanz eines remotefähigen Typs. In der Datei wird der Serveraktivierungsmodus Singleton, der Typname und die Assembly des Typs, in dessen Namen überwacht wird, sowie der URI (Uniform Resource Identifier) bzw. der externe Name des Objekts angegeben. (Weitere Informationen zu Objekt-URIs und Remoting finden Sie unter Aktivierungs-URLs.) In der Datei wird außerdem das Remotingsystem angewiesen, die Überwachung von Anforderungen an Port 8989 mit dem vom System bereitgestellten HttpChannel-Channel auszuführen.

Hinweis

Obwohl die oben genannte Konfigurationsdatei nur wenige Einstellungen enthält, treten hier die meisten Probleme bei der Verwendung von .NET Remoting auf, da einige dieser Einstellungen falsch sein können oder nicht den Konfigurationseinstellungen für Clientanwendungen entsprechen. Leicht kann ein Name falsch eingegeben, ein Port vergessen oder ein Attribut ignoriert werden. Wenn Probleme mit der Remoteanwendung auftreten, überprüfen Sie zunächst die Konfigurationseinstellungen.

Siehe auch

Aufgaben

Gewusst wie: Erstellen einer Hostanwendung

Referenz

Remoting Settings Schema
WellKnownObjectMode.Singleton

Konzepte

Konfiguration von Remoteanwendungen
Serveraktivierung

Weitere Ressourcen

Erstellen einer einfachen .NET Framework Remoting-Anwendung