Tarih Kısıtlaması !!!
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
Tarih Kısıtlaması !!!
Arkadaşlar;
Programa mesela 01/01/2006 ya geldiği zaman kullanım süresi doldu diyecek ve tarihi ileri veya geri yada aynı tarihte iken program çalışmayacak böyle birşeyi nasıl yapabilirim?
Programa mesela 01/01/2006 ya geldiği zaman kullanım süresi doldu diyecek ve tarihi ileri veya geri yada aynı tarihte iken program çalışmayacak böyle birşeyi nasıl yapabilirim?
@lazio güzel öneride bulunmuş.
- Güvenlik adına hiç bir kodun tam çözüm olmadığı konusunda hepimiz hemfikiriz.
Amaç her önüne gelen geçemesin ortamını sağlamak diyelim.
- Sistemi şöyle kur. Program her açılışında sistem tarihine baksın ve 01/01/2006 olduğunda Registry'ye bir kod düşsün. Bu bağımsız bir blok.
- Takip eden blokta Registry'de kod var mı diye bakılsın. Varsa Demo süresi dolmuş mesajı verdirirsin.
- System tarihi geri bile alınsa kod registry'de kalacağından hep Demo süresi dolmuş şeklinde bir mesaj vermeyi sürdürmüş olursun.
- Güvenlik adına hiç bir kodun tam çözüm olmadığı konusunda hepimiz hemfikiriz.

- Sistemi şöyle kur. Program her açılışında sistem tarihine baksın ve 01/01/2006 olduğunda Registry'ye bir kod düşsün. Bu bağımsız bir blok.
- Takip eden blokta Registry'de kod var mı diye bakılsın. Varsa Demo süresi dolmuş mesajı verdirirsin.
- System tarihi geri bile alınsa kod registry'de kalacağından hep Demo süresi dolmuş şeklinde bir mesaj vermeyi sürdürmüş olursun.
Kod: Tümünü seç
// Yaz
procedure TForm1.Button1Click(Sender: TObject);
var
Reg: TRegistry;
sWrite : String;
begin
sWrite := 'Değer';
Reg := TRegistry.Create;
try
Reg.RootKey := HKey_Local_Machine;
if Reg.OpenKey('\SOFTWARE\Dizin', True) then
begin
Reg.WriteString('Anahtar', 'Değer');
Reg.CloseKey;
end
else
ShowMessage('Anahtar Oluşturulamadı !');
finally
Reg.Free;
end;
end;
// Oku
procedure TForm1.Button2Click(Sender: TObject);
var
Reg: TRegistry;
sRead : String;
begin
Reg := TRegistry.Create;
try
Reg.RootKey := HKey_Local_Machine;
if not Reg.OpenKey('\SOFTWARE\Dizin', False) then
ShowMessage('Anahtar Bulunamadı !')
else
begin
sRead := Reg.ReadString('Anahtar');
Reg.CloseKey;
ShowMessage(sRead);
end;
finally
Reg.Free;
end;
end;
Aslında şöyle birşey yapmak istiyorum Programın içerisinde bir değer atarak mesela ;
SONTARIH:='01/01/2006';
bu tarih geldiği zaman geri veya ileri yada o tarih üzerindeyken program çalışmayacak 'GÜNCELLEME TARİHİNİZ GELMİŞTİR YAZILIMCINIZI ARAYINIZ PROGRAMINIZ HİÇBİR ŞEKİLDE ÇALIŞMAYACAKTIR !!' şeklinde bir mesaj verecek bende Update ile tarihi değiştirerek müşteriye gönderecem içinde yeni tarih olacak '01/01/2007' gibi .
Bu şekilde yardımcı olursanız daha çok sevinirim.
SONTARIH:='01/01/2006';
bu tarih geldiği zaman geri veya ileri yada o tarih üzerindeyken program çalışmayacak 'GÜNCELLEME TARİHİNİZ GELMİŞTİR YAZILIMCINIZI ARAYINIZ PROGRAMINIZ HİÇBİR ŞEKİLDE ÇALIŞMAYACAKTIR !!' şeklinde bir mesaj verecek bende Update ile tarihi değiştirerek müşteriye gönderecem içinde yeni tarih olacak '01/01/2007' gibi .
Bu şekilde yardımcı olursanız daha çok sevinirim.
Selam...
- Zaten bunu yapacaksın.
- Sana bahsedilmeye çalışılan konu, ilk sorduğun sordaki kilit mekanizması, yani system tarihi geriye alındığında programının tekrar çalışmaya dönmemesi...
- Şimdi sana yeni bir proje verelim. Bu aşamaları geçersen kendine oldukça faydası olacak. Forumda arama yaparsan bunu cevabını bulacaksın...
- Windows Registry'de
1. HKEY_LOCAL_MACHINE\SOFTWARE dalını kullanarak ozcank adında bir Anahtar oluştur.
2. Bu anahtar içine Durum adındaki bir dize değeri oluştur.
3. Durum dize değerine '1' ifadesini yazıdır.
4. Programa bir de Registry'de aynı dalda varsa bu değeri okuyan bir button hazırla.
5. Yazdığın değeri okuyup ekrana yansıt.
- Bu işlemleri gerçekleştirdiğinde emin ol sormak istediğin kontrolü yapacaksın.
- Zaten bunu yapacaksın.
- Sana bahsedilmeye çalışılan konu, ilk sorduğun sordaki kilit mekanizması, yani system tarihi geriye alındığında programının tekrar çalışmaya dönmemesi...
- Şimdi sana yeni bir proje verelim. Bu aşamaları geçersen kendine oldukça faydası olacak. Forumda arama yaparsan bunu cevabını bulacaksın...

- Windows Registry'de
1. HKEY_LOCAL_MACHINE\SOFTWARE dalını kullanarak ozcank adında bir Anahtar oluştur.
2. Bu anahtar içine Durum adındaki bir dize değeri oluştur.
3. Durum dize değerine '1' ifadesini yazıdır.
4. Programa bir de Registry'de aynı dalda varsa bu değeri okuyan bir button hazırla.
5. Yazdığın değeri okuyup ekrana yansıt.
- Bu işlemleri gerçekleştirdiğinde emin ol sormak istediğin kontrolü yapacaksın.