mikrocontroller.net

Forum: PC-Programmierung C# .lib (libusb) Libary einbinden


Autor: Johannes Glück (hansimglyck)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Forum,

Hat jemand eine Ahnung wie ich eine .lib Datei in C# einbinde und 
verwenden kann?
In C++ linke ich sie einfach hinzu. Das klappt auch wunderbar.
Nur in C# finde ich gerade mal die Methode:
 [DllImport(...)]
Die mir leider wenig weiterhilft.

explizit geht es darum die Libary libusb.lib unter C# zu verwenden.

Bin für jedne Tipp dankbar!

danke,
Hannes Baumer

Autor: Christian R. (supachris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
DLLImport ist schon richtig, wenn es keine managed DLL ist. Dann musst 
du jede Funktion exportieren. Irgendwie gab´s da mal ein Tool PInvoke, 
das macht das glaub für dich.

Autor: Johannes Glück (hansimglyck)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Christian, danke für deine AW.

Aber in dem Fall handelt es sich ja um eine Libary, also mit der Endung 
.lib. Kann ich in diese wirkich mit DLLImport laden?
Leider hat das bei mir nicht geklappt.

Werd mich aber mal auf die Suche nach dem Tool machen!

Autor: Simon K. (simon) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Einfach dem Linker beim kompilieren mitgeben?

Autor: Johannes Glück (hansimglyck)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
das dachte ich mir anfangs auch (bin absolut blutiger Anfänger was C# 
betrifft) aber wenn ich es richtig verstanden habe gibt es in dem Sinne 
keinen Linker mehr. (Oder ich habe in komplett übersehen ;) )

Autor: Christian R. (supachris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hmm...normal ist die .lib nur für Borland C++ und Visual C++....das ist 
die Export-Lib. Die eigentichen Funktionen stecken in der DLL, die hat 
LibUSB auch auf dein System kopiert. Die musst du mit DLLImport rein 
holen. Die Lib bringt sich nicht weiter.

Autor: Chris (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

ich würde einfach libusbdotnet 
(http://sourceforge.net/projects/libusbdotnet/) verwenden, da brauchst 
du dich mit den DLLImports, Klassen und Errorhandling nicht mehr 
herumschlagen.

In C# muss du die dll-Datei bei den Verweisen hinzufügen und im Code auf 
den Namespace referenzieren (entweder im using-Block oder immer den 
Namespace vor Funktionen/Klassen)

HTH

Chris

Autor: Johannes Glück (hansimglyck)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke für eure Antworten.

Ich habe jetzt die von Chris empfohlene libusbdotnet im Einsatz und es 
hat gleich auf Anhieb funktioniert. Was will man mehr ;)
thx!

Autor: mkeller (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo!

Sorry dass ich das uralte Thema wieder raus hole, aber die libusbdotnet 
sieht sehr interessant aus. Aber wird da überhaupt weiterentwickelt?

Bin auf der Suche / beim Auswählen der Schnittstelle zu meinem 
PIC18F87J50

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.