Konuyu Değerlendir
- 0 Oy - 0 Ortalama
- 1
- 2
- 3
- 4
- 5
 |
Delphi - Program bir kes çalışsın (Hatta açıksa hiç açılmasın bile)
|
 |
**SaBRoZa**
Security Administrator

Üye No: 1
Mesajlar: 2,503
Katılım: 19-01-08 21:25
Yer: Ankara
Cinsiyet: Erkek
Toplam Konu: 1945
|
Delphi - Program bir kes çalışsın (Hatta açıksa hiç açılmasın bile)
Kod:
Arkadaşlar merhabalar bilmeyen arkadaşlar için yazayım dedim, Kodbankta Programın yalnızca bir kez çalışması
ile ilgili,
CreateMutex(nil,FALSE,'PROGRAMADI');
if GetLastError = ERROR ALREADY EXISTS then
begin
ShowMessage('Program şu an çalışmakta.');
Halt(0);
end;
şeklinde kodlar var ve çok güzelde çalışıyor ancak bazı arkadaşlarımız bunun projenin kaynak kodlarına
eklenmesini söylemişler, bir arkadaşımızda kaynak kod dan çalışmayacağını bu kodun OnCreate yordamına
eklenmesi gerektiğini söylemiş. Şimdi önemli olan Evet bu kod doğru ve çok güzel çalışıyor ancak bir eksik
var o da bu kodlar kaynak koda eklenip çalıştırılabilirler sadece kaynak kodunuzdaki uses alanına
"CreateMutex" fonksiyonunu barındıran "Windows" ve "Showmessage" fonksiyonunu eklemeniz
gerekiyor. Bu şekilde açılış engellemenin en güzel tarafı eğer program açıksa daha form hafızaya alınmadan
program kapatılıyor. Eğerki bu kodu onCreate yordamına eklerseniz, program çalışır, form(lar) yüklenir ve
eğer aynı isimli çalışan program varsa program kapatılır. Umarım bilmeyen arkadaşlara yazdımcı olur...
Programın Kaynak Kodunun Son Hali:
program ABC;
uses
Forms,Windows,
Unit1 in 'Unit1.pas' {Form1};
{$R *.res}
begin
CreateMutex(nil,FALSE,'ABC v1.0'); if GetLastError = ERROR_ALREADY_EXISTS then Halt(0); //isterseniz uyarı felan da
Application.Initialize; // gösterebilirsiniz..
Application.MainFormOnTaskbar := True;
Application.Title := 'ABC v1.0';
Application.CreateForm(TForm1, Form1);
Application.Run;
end.
Uyarı: İndirmeye başlamadan önce lütfen linklerin hepsini kontrol ediniz.
İstek Yapmadan Önce Forumda Arama Yapınız!
Verilen emeğe lütfen saygı gösteriniz. En azından bir teşekkür edebilirsiniz.
Her Türlü Sorununuzda Bana Ulaşın.
Zamanın Durduğu Kaliteli İnsanların Paylaşım Mekanı
WwW.TRFoRuMCuYuZ.CoM
Hedefimiz En Büyük ve En İyi Olmaktır
![[Resim: imza.gif]](http://www.trforumcuyuz.com/images/imza.gif)
(En son düzenleme: 18-06-08 18-06-08 22:26 **SaBRoZa**.)
|
|
| 18-06-08 18-06-08 22:25 |
|
 |
|
 |