Einzelnen Beitrag anzeigen

Robert Marquardt
(Gast)

n/a Beiträge
 
#9

Re: Neues Programm für NB-5100p

  Alt 3. Aug 2007, 07:20
Ein sehr simples Programm, aber es sollte die Daten empfangen und anzeigen. Die Geraeteseite sollte damit erschlagen sein. Der Anhang ist das komplette D6 Projekt.
Delphi-Quellcode:
unit NB5100PMain;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, JvHidControllerClass, StdCtrls;

type
  TForm1 = class(TForm)
    HidCtl: TJvHidDeviceController;
    Label1: TLabel;
    ListBox1: TListBox;
    procedure HidCtlDeviceChange(Sender: TObject);
    procedure HidCtlDeviceData(HidDev: TJvHidDevice; ReportID: Byte;
      const Data: Pointer; Size: Word);
  public
    Dev: TJvHidDevice;
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.HidCtlDeviceChange(Sender: TObject);
begin
  // pruefen ob das bereits benutzte Geraet ausgesteckt wurde
  if Assigned(Dev) and not Dev.IsPluggedIn then
  begin
    // das Geraet zurueckgeben
    HidCtl.CheckIn(Dev);
    Label1.Caption := 'No device';
  end;
  // noch kein Geraet in Benutzung
  if not Assigned(Dev) then
    // pruefen ob die Fernbedienung angesteckt wurde, wenn ja in Benutzung nehmen
    if HidCtl.CheckOutByID(Dev, $147A, $E019) then
    begin
      Label1.Caption := 'Device connected';
      Listbox1.Items.Clear;
    end;
end;

procedure TForm1.HidCtlDeviceData(HidDev: TJvHidDevice; ReportID: Byte;
  const Data: Pointer; Size: Word);
var
  I: Word;
  P: PChar;
  S: string;
begin
  P := Data;
  S := '';
  for I := 0 to Size - 1 do
    S := S + Format('%.2x ', [Cardinal(P[I])]);
  ListBox1.Items.Add(S);
end;

end.
Doof bleibt doof. Copy & Paste Error beseitigt.
Angehängte Dateien
Dateityp: zip nb5100_129.zip (2,9 KB, 6x aufgerufen)
  Mit Zitat antworten Zitat