Delphi ile Cihaza Basit Erişim

Bu uygulamamızda , Delphi 7 ortamında, O-Key Dongle cihazına erişimi inceleyeceğiz.

 

O-Key Dongle cihazı ile haberleşme yapılabilmesi için ilk önce cihazda oturum açılıp, bir oturum numarası almak gerekmektedir.  Oturum açmak için OD_Login fonksiyonunu kullanacağız.

 

Cihazın bilgilerini görüntülemek için OD_Info fonksiyonunu kullanacağız.

 

Cihazda açtığımız oturumu kapatmak için ise OD_Logout fonksiyonunu kullanacağız.

 

Bu fonksiyonları yazmadan önce, kodumuzun başlangıcında O-Key Dongle kütüphanesi olan, OkeyDongleLibrary.dll dosyasından tanımlamalarını yapmalıyız. 

 

Delphi 7’yi çalıştırdığımızda karşımıza boş bir form gelecektir.

Bu forma bir buton ekleyelim.

Butona tıklandığında, O-Key Dongle cihazı ile haberleşme sağlayarak, cihaz bilgilerini ekranda mesaj kutusu ile göstereceğiz.

Bunu yapabilmek için butonun üstüne çift tıklayalım, karşımıza uygulamamızın kod bölümü gelecektir.

 

Bu kod bölümünde ilk önce kullanacağımız fonksiyonları tanımlayalım.

 

unit Unit1;

 

interface

 

uses

  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

  Dialogs, StdCtrls;

 

function OD_Login(ModuleID,DeviceParameter :PChar) :PChar;stdcall;external ' OkeyDongleLibrary.dll';

 

function OD_Logout(SessionID :PChar) :PChar;stdcall;external ' OkeyDongleLibrary.dll';

 

function OD_Info(SessionID :PChar) :PChar;stdcall;external ' OkeyDongleLibrary.dll';

 

Şimdi buton ile ilgili olan fonksiyonumuzu yazabiliriz.

 

İlk önce cihaza oturum açmak için OD_Login fonksiyonunu çağırmamız gerekiyor. Bu fonksiyon Modül Numarası ve Cihaz Seri Numarası olmak üzere iki parametre almaktadır.  Fonksiyon geriye oturum numarasını ya da hata mesajı döndürmektedir. Şu an için herhangi bir hata kontrolü yapmayacağız.

 

procedure TForm1.Button1Click(Sender: Tobject);

var

session_id: String;

begin

 

session_id:=string(OD_Login('0','222188AF0319540C5069DA76B41DBC62'));

 

end;

 

Şimdi OD_Info fonksiyonunu kullanarak cihazın bilgileri gösterelim. OD_Info fonksiyonu  parametre olarak oturum numarasını almaktadır.

 

procedure TForm1.Button1Click(Sender: Tobject);

var

session_id: String;

result: String;

begin

 

session_id:=string(OD_Login('0','222188AF0319540C5069DA76B41DBC62'));

result:=string(OD_Info(pchar(session_id)));

ShowMessage(result);

end;

Cihazda açtığımız oturumu kapatmak için ise OD_Logout fonksiyonunu kullanacağız. OD_Logout fonksiyonu parametre olarak oturum numarasını almaktadır.

 

Aşağıda tüm yazmış olduğumuz kod gösterilmektedir.

 

 

unit Unit1;

 

interface

 

uses

  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

  Dialogs, StdCtrls;

 

function OD_Login(ModuleID,DeviceParameter:PChar):PChar; stdcall;  external 'OkeyDongleLibrary.dll';

 

function OD_Logout(SessionID:PChar):PChar; stdcall; external 'OkeyDongleLibrary.dll';

 

function OD_Info(SessionID:PChar):PChar; stdcall;  external 'OkeyDongleLibrary.dll';

 

type

  TForm1 = class(Tform)

    Button1: Tbutton;

    procedure Button1Click(Sender: Tobject);

  private

    { Private declarations }

  public

    { Public declarations }

  end;

 

var

  Form1: TForm1;

 

implementation

 

{$R *.dfm}

 

procedure TForm1.Button1Click(Sender: Tobject);

var

session_id: String;

result: String;

begin

 

session_id:=string(OD_Login('0','222188AF0319540C5069DA76B41DBC62'));

result:=string(OD_Info(pchar(session_id)));

ShowMessage(result);

end;

 

end.

 

Uygulamanın çalışabilmesi için, çalışma klasörüne OkeyDongleLibrary.dll ve OkeyDongle.ini dosyasının kopyalanması gerekmektedir. 

 

Yazılımı çalıştırdığımızda cihaz ile ilgili bilgileri göreceğiz. Buradaki bilgiler cihaz versiyonu ve modelidir.

Böylece en basit anlamda cihaza erişerek, cihaz içerisinden bir bilgi okuduk ve ekranda gösterdik. Burada temel olarak Delphi için fonksiyonların tanımlanması ve çağrılması anlatılmıştır. Yazılım koruma ile ilgili herhangi bir kontrol, şifreleme vb. Yapılmamıştır.

 

Yazdığımız örnek uygulamayı indirmek için buraya tıklayınız.