USB-HID in MFC

Gast #1069174
Lesenswert?

Hallo,
habe ein Projekt mit AVR-USB von (obdev punkt at) (weiss nicht, ob ich 
einen link hier reinstellen darf) - das "HID-Data" Beispiel.

Nun möchte ich das PC-Beispielprogramm, welches als Consolenanwendung 
einwandfrei funktioniert in ein MFC-Dialog Programm einbringen.
Leider bekomme ich auf einmal mehrere Fehlermeldungen beim Compilieren 
(z.B. bei malloc() etc.), habe aber inzwischen alle beseitigen können 
bis auf folgenden:

error C2027: Verwendung des undefinierten Typs "usbDevice"
Siehe Deklaration von 'usbDevice'

Dies ist folgendermassen deklariert:
typedef struct usbDevice usbDevice_t;

In der Konsolenanwendung (auch mit VC6 kompiliert) kommt dieser Fehler 
nicht. Ich finde aber auch dort nirgends wo usbDevice herkommt.
Ist ausschliesslich in dieser Headerdatei vorhanden.
(habe schon eine Volltextsuche in allen Dateien c,h,lib gemacht)

Bitte helft - suche schon einen ganzen Tag lang.

PS: ich poste hier, da ich mich bei obdev erst anmelden muss.

Vielen Dank schonmal!
Gast #1069735
Lesenswert?

Natürlich muss du den struct usbDevice auch irgentwo definieren. Nur 
typedef reicht nicht. Woher soll c wissen was usbDevice ist ? Den 
gesamten Quellcode sollte man zur Analyse natürlich haben. Irgentwo muss 
sich auch die Konsole die Definition hersaugen.
Gast #1069896
Lesenswert?

Ist mir ja klar, dass dieser irgendwo definiert sein muss.
Ich hatte gehofft mir kann jemand sagen wo (weil das jemand kennt).
Wie gesagt habe ich im gesamten Projekt mit Volltextsuche nichts 
gefunden.
Werde mal beide Projekteinstellungen vergleichen ob dort noch etwas 
eingebunden wird, was ich nicht gefunden habe.
Kommentiert ist die betreffende Zeile mit:

/* Opaque data type representing the USB device.
Gast #1072448
Lesenswert?

obdev.at/downloads/avrusb/avrusb-20081126.zip
und dort -> examples -> hid-data

Ich habe aber inzwischen eine andere Variante gewählt:
www.ime.jku.at/TUSB/#implement

Ist alles mit API Aufrufen und funktioniert nach ein wenig lib-suchen 
WINVER setzen und kopieren einwandfrei.
War nur schwer, wenn man vorher noch nix mit USB gemacht hat (ausser 
Spannung klauen ;)
Auf das Projekt kann ich aber gut aufbauen.

Keine Ahnung warum das andere nicht ging.

Trotzdem Vielen Dank !
PS.: Interressieren tut es mich allerdings immernoch - auch wenn ich nun 
ein anderes Beispiel gewählt habe.
Gast #1072651
Lesenswert?

Vielen Dank Rufus,
ich hatte die Beschreibung so verstanden, dass für dieses Beispiel die 
Libusb nicht benötigt wird.

Na gut...

Trotzdem noch eine Frage:
Ich habe die libusb-win32-src-0.1.12.1.tar
hier und entpackt ABER wo zum Teufel finde ich diese Definition?

Danke
#1073937
Lesenswert?

Willi08 wrote:

> Trotzdem noch eine Frage:
> Ich habe die libusb-win32-src-0.1.12.1.tar
> hier und entpackt ABER wo zum Teufel finde ich diese Definition?

Das sind ja auch die Treiber-Quellen, da findest keine Elemente des API. 
Du musst das File libusb-win32-device-bin-0.1.12.1.tar.gz runterladen, 
das ist der kompilierte Treiber plus DLL plus Header-File und Library. 
Dann hast du auch deine Strukturen usw.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren