[C#] P/Invoke DLL (lame_enc.dll)

sNiff3ls

Grünschnabel
Hallo Community,

vorab, ich benutze Visual Csharp 2005 Express Edition.
Zum Problem:
Ich möchte gerne mit Hilfe der lame_enc.dll einen MP3-Converter schreiben, jedoch weiss ich nicht, wie ich die funktionen der lame_enc.dll benutze. Woher weiss ich, wie die Klassen in der dll heissen? Das einzige was ich im Netz gefunden habe waren mehrere Lösungen mithilfe der Lame.exe und System.Diagnosics.Process.
Auch mit Link und Link konnte ich nicht viel anfangen.
Ich hoffe ihr könnt mir erklären wie ich vorgehen muss und evtl. ein Codesnippet posten.

Im Vorraus vielen Dank
sNiff3ls
 
Hallo,

"lame_enc.dll" ist keine Klassenbibliothek sondern enthält nur eine Liste exportierter Funktionen, aber keine Klassen. Leider ist der dafür übliche Weg via DLLImport nicht möglich, da die Aufrufkonventionen der Funktionen nicht dem bei .NET erwarteten Schema entsprechen Damit wird die Verwendung der DLL etwas kompliziert, weil dafür noch ein Wrapper benötigt wird.
Du kannst dir mal diesen Artikel anschauen, in dem das für VB beschrieben wird. Evt. hilft es dir weiter. Ich selber habe in der Richtung allerdings noch nichts gemacht.

Gruß
MCoder
 
Hi!

Ich hoffe es stört nicht wenn ich mich da an den Thread anhänge :)

Bin neu hier und bräuchte eure Hilfe. Ich hab eigentlich genau das selbe Problem wie der Thread-Ersteller. Ich möchte ein VC# - Programm schreiben mitdem ich wave in mp3 und mp3 in wave konvertieren kann. Mittlerweile bin ich zu dem Entschluss gekommen, dass ich die lame.dll bzw. die lame.exe verwenden muss. Bei beidem hab ich das Problem, dass ich keine Dokumentation dazugefunden hab wie ich die Datein einbinde und die darin geschreibenen Funktionen nutzen kann. Könnt ihr mir da vll weiterhelfen?

Einen C# - Wrapper für die DLL hab ich leider noch nicht gefunden. Wisst ihr vll wo ich einen gut verständlichen finden könnte?

MfG Berni
 
Zurück