Rabu, 30 April 2008

Single Instance Application

Ada beberapa cara yang bisa digunakan untuk membuat single instance application. Saya hanya mau membagi sedikit info gratis yaitu dengan memanfaatkan API dari windows. Fungsi yang digunakan adalah CreateFileMapping dengan sedikit memodifikasi isi dari file project. Cara menggunakannya adalah sebagai berikut:


...

uses Windows, … ;

const
MAX_SIZE_HIGH = 0;
MAX_SIZE_LOW = 32;
{ Bisa diganti dengan string apa saja yang akan menjadi Id
dari aplikasi.}
APP_IDENTIFIER = ‘th3-4ppl1c4t10nk3y’;

var
hMap: THandle;

begin
Application.Initialize;

hMap := CreateFileMapping(0, nil, PAGE_READONLY, MAX_SIZE_HIGH,
MAX_SIZE_LOW, APP_IDENTIFIER);
if (hMap <> 0) and (GetLastError = ERROR_ALREADY_EXIST) then

begin
CloseHandle(hMap);
Application.Terminate;
end;



Application.Run;
end.

Syntax Highlighted with http://delphi-id.org/syntax


Semoga bermanfaat. :)

0 komentar: