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.
|