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)
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)