Hallo,
nachdem ein Projekt nun verteilt werden soll, stoße ich auf verschiedene Schwierigkeiten bzgl. den EnterpriseServices. Zum einen läuft ein Clientprogramm nur, wenn die .dll vom Server mit vor Ort liegt. Ich vermute, dass das aufgrund der Verweise so ist. Bei verteilten Anwendungen macht sowas jedoch keinen Sinn. Wie kann ich erreichen, dass ich lediglich die Client-Exe verteilen muss.
Weiterhin scheint es mir aufgrund verscheidener Fehlermeldungen (ungültige Typumwandlung beim Instanziieren des Serverobjektes), als ob es für den Client wichtig ist, dass die Version des Servers, welcher als Verweis benutzt wurde, die selbe ist die beim Instanziieren vorgefunden wird.
Das würde imho auch wenig Sinn machen, wenn z.B. eine Serverfunktion erweitert würde, müßte man ja alle Clients ebenfalls updaten. Also vermute ich auch hier, dass ich noch einen Fehler mache.
Hier mein Quellcode in C#, mit welchem ich das Serverobjekt aufrufe:
<PRE>
Guid guid = new Guid( "...");
Type t = Type.GetTypeFromCLSID (guid, "ServerIP",false );
MyObject inv = (MyObject) Activator.CreateInstance(t);
</PRE>
Ich bin für jeden Hinweis dankbar,
Grüße, Daniel
nachdem ein Projekt nun verteilt werden soll, stoße ich auf verschiedene Schwierigkeiten bzgl. den EnterpriseServices. Zum einen läuft ein Clientprogramm nur, wenn die .dll vom Server mit vor Ort liegt. Ich vermute, dass das aufgrund der Verweise so ist. Bei verteilten Anwendungen macht sowas jedoch keinen Sinn. Wie kann ich erreichen, dass ich lediglich die Client-Exe verteilen muss.
Weiterhin scheint es mir aufgrund verscheidener Fehlermeldungen (ungültige Typumwandlung beim Instanziieren des Serverobjektes), als ob es für den Client wichtig ist, dass die Version des Servers, welcher als Verweis benutzt wurde, die selbe ist die beim Instanziieren vorgefunden wird.
Das würde imho auch wenig Sinn machen, wenn z.B. eine Serverfunktion erweitert würde, müßte man ja alle Clients ebenfalls updaten. Also vermute ich auch hier, dass ich noch einen Fehler mache.
Hier mein Quellcode in C#, mit welchem ich das Serverobjekt aufrufe:
<PRE>
Guid guid = new Guid( "...");
Type t = Type.GetTypeFromCLSID (guid, "ServerIP",false );
MyObject inv = (MyObject) Activator.CreateInstance(t);
</PRE>
Ich bin für jeden Hinweis dankbar,
Grüße, Daniel
Comment