Kodbank İndir

! CODEBANK 2012 !

İNDİRMEK&DETAYLI BİLGİ ALMAK İÇİN BURAYI TIKLAYINIZ.

ÖNEMLİ AÇIKLAMA: MUTLAKA OKUYUNUZ!

Gönderen Konu: Programlarınızın Kopyalanmasını Engellemek  (Okunma sayısı 2899 defa)

0 Üye ve 1 Ziyaretçi konuyu incelemekte.

Çevrimdışı molla

  • Yeni Üye
  • *
  • İleti: 5
  • Rep: +0/-0
Programlarınızın Kopyalanmasını Engellemek
« : 28 Nisan 2008 09:43:24 »
Delphide programlarinizin kopyalenmesini engellemek
Merhaba ;D

Programcilikta, hepimizin önem verdigi seylerden biri de ticari amaclarla yazdigimiz programlarin bir bilgisayardan digerine cekilmesini engellemektir. Bunun icin sayisiz yol vardir. Bunlardan biride eger Windows tabanli calisiyorsaniz sudur: Sistem.Dbf diye bir Database dosyasini programin installationinda yaratin ve bu Sistem.dbf dosyasina programin kuruldugu bilgisayarin Biosunun Seri Numarasi, Tarihi, Modeli gibi bilgileri kaydedin. Daha sonra program her calistiginda o anki biosun seri numarasiyla Sistem.Dbf'teki Biosun seri numarasini karsilastirsin, tutmazsa programin calistigi bilgisayar degismis demektir. Sistem.Dbf dosyasini sifreli table yapmaniz daha saglikli olacatir.
Biosun üretim tarihi ve Biosla ilgili diger bilgileri su sekilde elde edebilirsiniz:

Kod: Delphi
  1. unit biosbilgi;
  2. interface
  3. uses
  4. Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,Registry,
  5. StdCtrls;
  6. const
  7. DBRoot = HKEY_LOCAL_MACHINE;
  8. type
  9. TForm1 = class(TForm)
  10. Button1: TButton;
  11. Label1: TLabel;
  12. Label2: TLabel;
  13. Label3: TLabel;
  14. procedure Button1Click(Sender: TObject);
  15. private
  16. { Private declarations }
  17. public
  18. { Public declarations }
  19. end;
  20.  
  21. var
  22. Form1: TForm1;
  23. BRegistry: TRegistry;
  24. Biosdate:string;
  25. Biosname:string;
  26. Biosver:string;
  27. implementation
  28.  
  29. {$R *.DFM}
  30. procedure TForm1.Button1Click(Sender: TObject);
  31. begin
  32. BRegistry := TRegistry.Create;
  33. BRegistry.RootKey := DBRoot;
  34. BRegistry.LazyWrite := false;
  35. BRegistry.OpenKey('Enum\Root\*PNP0C01\0000', False);
  36. BiosDate := BRegistry.ReadString('BIOSDate');
  37. BiosName := BRegistry.ReadString('BIOSName');
  38. BiosVer := BRegistry.ReadString('BIOSVersion');
  39. BRegistry.CloseKey;
  40. Label1.Caption:=BiosDate;
  41. Label2.Caption:=BiosName;
  42. Label3.Caption:=Biosver;
  43. end;
  44.  
  45. end.

Çevrimdışı barutali

  • Administrator
  • *****
  • İleti: 2.117
  • Rep: +51/-0
  • Cinsiyet: Bay
  • Falan filan ...
Ynt: Programlarınızın Kopyalanmasını Engellemek
« Yanıtla #1 : 27 Eylül 2009 01:55:33 »
 belki denk gelmemişsindir ama ufak bir hatırlatma ... Bazı psikopat antivirüs yazılımları regeditten veri okumaya bile izin vermediği oluyor ...

AVG antivirüs bana okutturmamıştı mesela ...



Amatör Küme Programcı

Çevrimdışı selchuk

  • Kıdemli Üye
  • *****
  • İleti: 266
  • Rep: +0/-0
  • Cinsiyet: Bay
    • Arma Ticari Sistem
Ynt: Programlarınızın Kopyalanmasını Engellemek
« Yanıtla #2 : 01 Kasım 2009 08:54:27 »
Hocam Selamlar

Ben bu kodu çalıştıramadım. Çalışan bir örnek varmı?
Projemde kullanmak istiyorum.
Knowledge is power (Bilgi Güçtür)

Çevrimdışı ATMXEON

  • Üye
  • ***
  • İleti: 35
  • Rep: +0/-0
  • Cinsiyet: Bay
  • ZORU BAŞARIRIM, İMKANSIZ BİRAZ ZAMAN ALIR!
Ynt: Programlarınızın Kopyalanmasını Engellemek
« Yanıtla #3 : 26 Aralık 2009 16:34:13 »
Bunu engelleyebilseydi micrsoft engellerdi. Bence hiç uğraşmayın. Ticari programınızda kullanıcıya özel birişlem yapınız gitsin.

Projeyi Net destekli yapın. Belki internet olmayan bilgisayarda çalışmayacaktır, ama etkili.

Web sitenizde bir tane ectivex uygulaması yazın.
Programınız ufak bir işlemle HDD seri numarasını size yollasın. activex bunu işleyip tekrar programı update edebilir.

ZORU BAŞARIRIM, İMKANSIZ BİRAZ ZAMAN ALIR!

Çevrimdışı selchuk

  • Kıdemli Üye
  • *****
  • İleti: 266
  • Rep: +0/-0
  • Cinsiyet: Bay
    • Arma Ticari Sistem
Ynt: Programlarınızın Kopyalanmasını Engellemek
« Yanıtla #4 : 10 Ocak 2010 02:46:28 »
Merhaba Arkadaşlar,

Boş bir forma 3 adet Label 1 tanede Buton ekeleyerek unit kodunu olduğu gibi kaydettim. Form ismi biosbilgi.

Fakat Butona tıklayınca Label 'larda birşey çıkmıyor. Label1, Label2, Label3 yazılarını silmeden ekleyince de bu yazılar siliniyor boş gözüküyor.

Bende Amd işlemci var. İşlemciyle alakası olabilir mi?

Bu kodları kullanıp da çalıştıran varmı?

Knowledge is power (Bilgi Güçtür)

Çevrimdışı cakirr42

  • Global Moderatör
  • *****
  • İleti: 955
  • Rep: +5/-2
  • Cinsiyet: Bay
  • Ben Bana Kendim İçin Lazımım...
    • ÜYELİK.TK
Ynt: Programlarınızın Kopyalanmasını Engellemek
« Yanıtla #5 : 31 Ocak 2010 11:38:30 »
bende @selchuk kardeşimizle aynı sorunu yaşadım, yani bu kod çalışmıyor
http://akcakir.net/
Dalından Kopan Yaprağın Akıbetini Rüzgar Tayin Eder
"Alparslan TÜRKEŞ"