.NET Remoting, 1x Client auf mehrere Server

vrumfondel

Grünschnabel
Hallo,

ich Rahmen eines Softwaretests muss ich mit verteilten Apps arbeiten. Dabei stieß ich auf das .NET Remoting.

Meine Aufgabe (vereinfacht) :
Ich brauche eine WinApp mit einem Button. Diese WinApp muss Verbindungen zu mehreren entfernten Computern aufbauen. Klicke ich auf den Button sollen auf den entfernten Computern, z.B. der IE gestartet werden.

Ich habe eine WinApp als .NET Remoting Client und eine Konsolenanwendung als .NET Remoting Server geschrieben. Wenn ich nur 1x Client und 1x Server habe, kann ich mit meiner ClientApp durch die ServerApp den IE starten.

Jetzt habe ich versucht in meiner ClientApp einfach ein Array mit einer Liste von Computern anzugeben auf denen eine ServerApp läuft. Der Client soll eine Verbindung zu allen Server aufnehmen und bei einem Klick auf allen 'Server' (sind ja logische Clients) den IE starten.

Das klappt aber leider nicht. Andersrum, also mittels des .NET Remoting Server auf den Client denn IE zu starten, habe ich nicht geschafft.

Das hier ist die Methode, die ich ein einem Loop aufrufe, um eine Verbindung zu mehreren Server aufzubauen, spätenstens bei der zweiten Iteration bekomme ich immer einen Fehler.

Code:
public void RegisterToServer(String aName)
        {
            try
            {   
                String Url = "tcp://" + aName + ":8065/RemoteObject";
                IChannel myChannel = new TcpChannel();     
                ChannelServices.RegisterChannel(myChannel);
                WellKnownClientTypeEntry remoteType =
                    new WellKnownClientTypeEntry(typeof(RemoteObject), Url);
                RemotingConfiguration.RegisterWellKnownClientType(remoteType);

                // serverobject in arraylist speichern
                mRemoteObjectList.Add(
                    (RemoteObject)Activator.GetObject(typeof(RemoteObject), Url));

            } catch (Exception e)
            {                
                String text = e.Message;
            }
        }

Ich bin für jede Idee/Denkantoß oder auch fertige Lösung dankbar.

Danke,
Vrumfondel
 
Zurück