[InterOP] .NET COM Server auf Terminalserver verteilen



Hallo, NG

ich möchte folgende Architektur auf einem Terminalserver zum laufen
kriegen:

in _einem_ Installationsverzeichnis liegen ein nativer COM-Server
(soll heissen in c++ unmanaged gecodet), der Methoden einer in C#
hergestellten
Assambly via COM-Interop aufrufen soll. Die Schnittstelle ist in eine
Typelib
ausgelagert.
Dies funktioniert auf den Entwicklungsrechnern gut, nicht jedoch auf einer
Terminal-Server
Installation.

Die Konfiguration:

- Admin-Rechte vorhanden, die Zonenrichlinie wurde für .Net Assamblies
auf "vertrauensürdig" eingestellt
- Der aktiver Server wurde mit /regserver, der passive mit regasm.exe
registriert
- ActiveX-Server scheint zu laufen (Clients VB und WSH starten den Server)
- Der Aufruf der Methoden der .NET (COM-) DLL liefern aber
Fehler ("Typ nicht passend") statt der erwarteten Rückgabewerte
- Objektaktivierung aus der DLL via OleView scheitert, aber das kann daran
liegen, daß
- keine keine starken Namen verwendet werden (möchte ich vermeiden, da eine
ganze Kaskade
Assamblies mit betroffen wäre)

BTW.: Der Versuch, starke Namen im nachinein einzuführen brachte nichts
ausser der
nun ständigen Fehlermeldungen zur Laufzeit, z.B.

System.IO.FileLoadException: Die Manifestdefinition
'partners.references.settings'
der Assembly stimmt nicht mit dem Assemblyverweis überein.

Was will man mir damit nur sagen?

Die Folge: Alle Clientprojekte sind unbrauchbar...

Wie bringe ich die Komponenten auf eine solches System zum laufen?

Bin schon einmal dankbar für Hinweise, links etc!

Gruß
Peter


.



Relevant Pages