PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : .net - wie von C# auf CLR DLLs zugreifen?


SavageX
2007-07-01, 12:40:14
Hallöchen,

ich habe mir mal den Spass gemacht, die libtremor (ein Ogg Vorbis decoder) als managed C++ mit /clr:pure zu kompilieren - die entstandene DLL sollte damit eigentlich nur aus reinem bytecode bestehen, der überall laufen sollte, wo es eine .net runtime gibt (Mono für Linux, .net auf Windows und PDAs...).

libtremor ist in purem C geschrieben, so dass ich ein paar explizite Casts reinschreiben musste, damit das als C++ durchgeht. Nichts weltbewegendes.

Nun habe ich also diese DLL ( http://savage747.sa.funpic.de/tremor-clr.zip ) und bin eigentlich der Meinung, dass diese allen .net Sprachen zugänglich sein müsste. Ich kann z.B. in Visual C# einen Verweis auf diese DLL reinbringen - doch ich sehe nirgendwo, welche Datenstrukturen denn überhaupt da drin stecken.

Jemand eine ganz logische Idee? (Mein Hinterkopf rät mir dazu, die C-Bibliothek nach Möglichkeit noch in C++ zu wrappen, damit da irgendwie noch Objekte ins Spiel kommen)

Coda
2007-07-01, 13:33:26
Du brauchst eine "public ref class", dann geht das.

SavageX
2007-07-01, 14:11:15
Ah, okay, also doch hübsch wrappen und objektorientiert aufbereiten.

Danke!