Nun, ich weiß, wenn die Bibliothek in .NET ist, ist es ein wenig sinnlos, über COM darauf zuzugreifen, aber ich bin etwas perplex, weil ich jemanden bitten würde, eine Bibliothek zu schreiben und sie über COM zu enthüllen Diese Person sollte das in jeder Sprache tun können.Warum kann eine .NET COM-Bibliothek nicht über COM in .NET verwendet werden?
Es sollte mir egal sein, in welcher Sprache die COM-Bibliothek geschrieben ist, also warum ist es wichtig?
Als Referenz ist das, was passiert, wenn man auf einer TLB-Datei aus einer .NET-Bibliothek erzeugt verwenden tlbimp:
C:\dev>tlbimp test.tlb
Microsoft (R) .NET Framework Type Library to Assembly Converter 4.0.30319.1
Copyright (C) Microsoft Corporation. All rights reserved.
TlbImp : error TI1029 : Type library 'test' was exported from
a CLR assembly and cannot be re-imported as a CLR assembly.
Zusätzlich mein Test COM-Bibliothek verwendet IUnknown, nur früh gebundenes COM-Interop unterstützt .
pst: Die tlbimp.exe weigert sich, die Typen importieren zu lassen. – Arafangion
pst: Wie sonst würden Sie eine .NET COM-Bibliothek über COM in .NET verwenden? – Arafangion
tlbimp.exe ist nur ein Tool zum automatischen Extrahieren/Erstellen von Bindungen. Es ist nicht erforderlich und der gesamte Prozess kann wie bei jeder anderen in .NET verwendeten COM-Schnittstelle von Hand ausgeführt werden. –