Program kullanılmadığı takdirde programı kapat
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
Program kullanılmadığı takdirde programı kapat
S.a. Değerli Arkadaşlar. Elimde belli bir adet lisansı olan paket yazılım var. Ama insanlar programı açıp hiç kullanmadıkları halde açık kalıyor ve belli bir kulanıcı adetinden sonra program kullanıcı sayısı aşıldı hatası alıyorum. Küçük bir yazılım yapıp firmadaki arkadaşlara kurup eğer örnek veriyorum 5 dakika prorgam kullanılmadıysa kapa gibi bir şey düşünüyorum. Mümkünmüdür değilmidir. Nasıl yapabilirim sizlerden bilgi almak istiyorum. İyi Çalışmalar
-
- Üye
- Mesajlar: 38
- Kayıt: 27 Ara 2006 03:13
Arama yaparsanız Forumda bulabilirsiniz...
Kolay Gelsin..
Kod: Tümünü seç
Function SecondsIdle: DWord;
Var
liInfo: TLastInputInfo;
Begin
liInfo.cbSize := SizeOf(TLastInputInfo);
GetLastInputInfo(liInfo);
Result := (GetTickCount - liInfo.dwTime) Div 1000;
End;
Kod: Tümünü seç
procedure TForm1.Timer1Timer(Sender: TObject);
begin
Caption := Format('Kullanıcı etkileşimsizlik süresi %d saniye - (System IDLE last second)', [SecondsIdle]);
If SecondsIdle >= 5 Then // Denemek icin 5 saniye verelim
SendMessage(Handle, WM_CLOSE, 0, 0);
end;
- sadettinpolat
- Moderator
- Mesajlar: 2131
- Kayıt: 07 Ara 2003 02:51
- Konum: Ankara
- İletişim:
soyle birsey de yapilabilir.
forma bir adet timer ,label, memo ve application nesnesi birakin.
formun public alaninda SonIslem:Cardinal; degiskenini tanimlayin.
programa gelen hicbir mesaj olmazsa (bu ornekte 2 mesaj haric) labelda hareket yok yazacaktir.
forma bir adet timer ,label, memo ve application nesnesi birakin.
formun public alaninda SonIslem:Cardinal; degiskenini tanimlayin.
Kod: Tümünü seç
procedure TForm1.FormCreate(Sender: TObject);
begin
timer1.Interval := 10000;
end;
Kod: Tümünü seç
procedure TForm1.ApplicationEvents1Message(var Msg: tagMSG;
var Handled: Boolean);
begin
if (msg.message <> 280) and (msg.message<>$0113) then //$0113 = WM_TIMER
begin
SonIslem :=GetTickCount;
Caption := intToStr(SonIslem);
memo1.Lines.Add(inttostr(msg.message));
end
end;
Kod: Tümünü seç
procedure TForm1.Timer1Timer(Sender: TObject);
begin
if GetTickCount - sonislem > 100 then label1.Caption :='hareket yok';
end;