Angenommen, ich habe in .Net eine Klassenbibliothek (dll) geschrieben, und jetzt haben Entwickler sie in ihren .Net-Anwendungen verwendet..Net - Kann eine in .Net geschriebene Klassenbibliothek (dll) von einer in C oder C++ geschriebenen Anwendung verwendet werden?
Die Bibliothek selbst könnte jedoch auch für Entwickler nützlich sein, die nativ schreiben (in C oder C++). Also meine Frage ist, ob meine verwaltete DLL in C oder C++ verwendet werden kann?
Wenn nicht, warum? Vielleicht muss ich einen speziellen Code hinzufügen, um ihn für native Programmierer verfügbar zu machen?
Danke.
EDIT: Falls jemand anderes in diesem Thema interessiert ist, fand ich this Artikel von Google Books, die eine Einführung gibt, wie Net.classes von COM zu verwenden.
Ich habe keine Einwände! Mein Wissen darüber ist nicht viel und ich lerne. Vielen Dank für Ihre Erklärung. Wenn ein C++ - Entwickler jedoch meine verwaltete Dll/Assembly aufrufen und deren Methoden verwenden möchte, bestätige ich, dass er dies tun kann, solange er COM Interop verwendet (worüber ich nichts weiß) oder muss Ich mache etwas mit meiner Bibliothek, um COM Interop für ihn zu aktivieren? Sorry für alle Fragen, aber ich bin ziemlich neu in diesem fortgeschrittenen Zeug. – moster67
Sie müssen Ihre Assembly in .NET als COM-exposed markieren (dies ist eine Projekteigenschaft), und Sie müssen einige Installationsarbeiten mit dem Code ausführen, damit es funktioniert. Es gibt viele Artikel darüber, wie Sie Ihre .NET-Assembly und -Klassen für COM verfügbar machen. Der C++ - Entwickler muss dann die COM-Schnittstelle verwenden, um mit Ihren Klassen zu interagieren. Es ist keineswegs ein einfacher oder nahtloser Prozess. –
Adam: Vielen Dank für die Hinweise. Ich denke, ich muss mit jemandem zusammenarbeiten, der sich in einer nicht verwalteten Sprache entwickelt, und gemeinsam versuchen, dies zum Laufen zu bringen. Nochmals vielen Dank für Ihre Hilfe. Einen schönen Tag/Wochenende haben. – moster67