Entwickler-Ecke

Basistechnologien - C-Lib in cSharp nutzen


Määx - Di 29.04.14 18:29
Titel: C-Lib in cSharp nutzen
Hallo zusammen,

ich würde gerne eine SIP-SDK (www.linphone.org [http://www.linphone.org]) nutzen, die Anwendung selber aber in c# implementieren.
Leider konnte ich keine dlls oä finden. Daher wollte ich fragen, ob man die Lib auch irgendwie anders einbinden kann?
Ich selbst nutze VisualStudio, die Lib enthält keinerlei Projektdateien oä...

Wie gehe ich da am besten vor? Ich habe beim googlen immer etwas bezüglich eines Wrappers gelesen, aber nicht rausgefunden, wie man einen solchen erzeugt?

Bin für jeden Tipp dankbar!!
Määx

Moderiert von user profile iconTh69: URL korrekt gesetzt


Th69 - Di 29.04.14 19:09

Hallo,

wenn du die Sourcen hast, kannst du aber dir selber mit dem Visual Studio eine DLL erzeugen, s. z.B. Exemplarische Vorgehensweise: Erstellen und Verwenden einer Dynamic Link Library (C++) [http://msdn.microsoft.com/de-de/library/ms235636.aspx].

Du müßtest dann zuersteinmal alle Sourcen dem DLL-Projekt hinzufügen und dann noch evtl. Compiler- und Linkeroptionen (z.B. DEFINES und Include-Pfade etc.) angeben.

Je nachdem wie der Source aufgebaut ist, müßtest du dann evtl. noch für die DLL dann die zu exportierenden Funktionen angeben - Stichwort: _declspec(dllexport).

Und von C# aus kannst du dann mittels P/Invoke (d.h. dem Attribut [DLLImport]) auf diese DLL und dessen Funktionen zugreifen - evtl. noch Marshalling bzgl. Parameterübergaben durchführen).


Määx - Fr 02.05.14 11:21

Super Danke!

Dann probiere ich mal mein Glück und melde mich ggf nochmal falls ich auf Probleme stoße :)