Hallo,
die Sitation: Es gibt ein Application-Level Addin, welches eine Schnittstelle für VBA anbietet (per COM, also Implementierung gegen ein Interface). Das Addin ist in .NET implementiert. Soweit sogut.
Nun kommt ein weiteres Documemt-Level Addin hinzu, ebenfalls .NET, welches möglichst komplett in .NET (also ohne COM) und ohne Umwege direkt auf die Schnittstelle, und auch von der Schnittstelle zurückgegebene Objekte (public class die für VBA irrelevant und ohne Interface-Implementierung sind), zugreifen soll.
Diesem sind die Klassen des ersten Addins natürlich per Referenz bekannt.
Hier tut sich recht schnell ein Problem auf, da nunmal alles über COM gewrapped ist und dementsprechend vom ComObject-Typ ist und nur gegen Interfaces gecastet werden kann.
Egal wie ich suche... immer finde ich nur den eher allgemeinen Hinweis, man müsste per ComAddins.Item("NameDesApplicationLevelAddins").Object zugreifen. Ich möchte aber wie gesagt spätestens bei zurückgegebenen Objekten eben direkt auf das .NET-Objekt zugreifen, und zwar möglichst ohne Umwege.
Danke; also leider tatsächlich so wie ich es "befürchet" hatte mit Umwegen.