zebex barkod okuyucudan veri alma(seri port ile)

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
gimil
Üye
Mesajlar: 33
Kayıt: 28 Ara 2006 10:29
Konum: ank

zebex barkod okuyucudan veri alma(seri port ile)

Mesaj gönderen gimil »

Arkadaşlar merhaba,

amacım zebex crd-20 barkod okuyucudan verileri almak. barkod verileri barkod okuyucunun hafızasında tutuluyor.(duruma göre 5000 adet olabiliyor.)
barkod okuyucu pc ye seriporttan bağlı. forumdaki buna benzer konulara baktım, fakat, kiminin verdiği link silinmiş, kimini anlayamadım uygulayamadım.

İndirdiğim componenetlerde işe yaramadı. bir çoğu zaten kurulumda hata veriyor. kurulanıda ben çalıştıramadım. en son api ile yapmaya çalıştım o da olmadı.
yardımlarınızı bekliyorum. Saygılar.

delphi 7 kullanıyorum.

api de kullandığım kod:

Kod: Tümünü seç

unit Unit1;

interface

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

type
  TForm1 = class(TForm)
    Button1: TButton;
    Button2: TButton;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

function CreateFile(lpFileName:PChar;
                    dwDesiredAccess, dwShareMode: DWORD;
                    lpsecurityAttributes: PSecurityAttributes;
                    dwCreationDisposition, dwFlagsAndAttributes: DWORD;
                    hTemplateFile: THandle): THandle; stdcall;
begin
end;
function ReadFile(hFile: THandle;
                  var Buffer; nNumberOfBytesToRead:DWORD;
                  var lpNumberOfBytesRead: DWORD; lpOverlapped:
                  POverlapped): BOOL; stdcall;
begin
end;
procedure TForm1.Button1Click(Sender: TObject);
var
ok:boolean;
j:integer;
d:array[1..100] of char;
s:string;
okunan_byte:dword;
PortHandle:THandle;
begin
ok:=ReadFile (PortHandle, d, sizeof(d), okunan_byte, nil);
  if not ok then
  begin
  showmessage('okuma yapılamadı');
  end
  else
    begin
    s:='';
    for j:=1 to okunan_byte do
    begin
    s:=s+d[j];
    end;
    showmessage('porttan okunan bilgi:'+s);
    end;

end;

procedure TForm1.Button2Click(Sender: TObject);
var
Port_ADI:Array[0..80] of char;
PortHandle:THandle;
begin
strPCopy(Port_ADI, 'COM1');
PortHandle:= CreateFile(Port_ADI, GENERIC_READ or GENERIC_WRITE, 0, Nil, OPEN_EXISTING, 0, 0);
if (PortHandle= -1) then
begin
showmessage('bağlantı noktası açılamadı');
end;

end;

end.
varyemez
Üye
Mesajlar: 262
Kayıt: 01 Oca 2009 11:00
Konum: Bursa
İletişim:

Re: zebex barkod okuyucudan veri alma(seri port ile)

Mesaj gönderen varyemez »

wintaskgen isimli bir programı var zebex in.. bilkur.com.tr dan bunu indirip onunla çalışabilirsin.
alidirik
Üye
Mesajlar: 16
Kayıt: 04 Eyl 2010 11:15

Re: zebex barkod okuyucudan veri alma(seri port ile)

Mesaj gönderen alidirik »

zebex crd-20 bir barkod okuyucu değilde Zebex PDL20-16 el terminali olarak geçiyor. Üretici (Zebex) tarafından geliştirilen bir DLL ile bu işlemi yapabiliyorsunuz. Aslında işiniz çok kolay. http://www.barkodokuyucu.com/download/zebex/SDK.zip linkinden indirebileceğiniz dosya içerisinde Delphi ile bu cihaza veri gönderme/alma işlemini yapan örnek bir program mevcut. bu program Remot.DLL adlı bir dosyaya ait komutlar kullanıyor.
Cevapla