Hab soweit alles am laufen, sobald ich allerdings mein fertiges Programm auf den Zielrechner bringe, wird ein Fehler beim starten der Anwendung angezeigt "Device cannot be identified"
Während meiner Recherche bin ich auf einen Beitrag auf GitHub gestoßen
LINK
Im verlauf der Diskussion kommt der Autor darauf das es an der Verwendung der JvHidControllerClass liegt.
Delphi-Quellcode:
@Steadyspike thanks a lot! It was a bug in the JVCL library (JvHidControllerClass) for Delphi...
in the constructor
constructor TJvHidDeviceController.Create(AOwner: TComponent; AOnHidCtlDeviceCreateError: JvHidDeviceCreateError; AOnDeviceChange: TNotifyEvent);
the two lines
SetOnDeviceChange(AOnDeviceChange);
FOnDeviceCreateError := AOnHidCtlDeviceCreateError;
are in the wrong order.
FOnDeviceCreateError must be set first.
I worked around by calling the constructor in two steps:
FHidCntrl := TJvHidDeviceController.Create(Self, DoOnDeviceCreateError, Nill);
FHidCntrl.OnDeviceChange := DoOnDeviceChange;
Den entsprechenden Eintrag im Constructor habe ich gefunden und die werte wie beschrieben miteinander getauscht, allerdings weist er am ende des Beitrags auch daraufhin, dass er besagten Constructor in zwei schritten aufruft.
Wie ist das gemeint und wie kann ich dies Bewerkstelligen.