• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Programın Sadece Bir Bilgisayarda Çalışmasını Sağlamak

Katılım
3 Haziran 2017
Mesajlar
797
Excel Vers. ve Dili
2007, 32
Arkadaşlar,

Başlıktan da anlaşılacağı üzere bir programın sadece bir bilgisayarda çalışmasını sağlamak istiyorum. Bunu mümkün olan en basit yöntemle yapmak istiyorum çünkü amaç lisanslamak, ticari kaygı falan değil.

Bunu kod içine bilgisayara has bir bilgi girerek ve açılışta bunu sorgulatarak yapmak mümkün sanırım. Ancak hangi bilgi koda nasıl tanıtılacak, bu kod nasıl sorgulanacak noktasında yardıma ihtiyacım var.

Forumda bir örnek var ancak bana çok karışık geldi, açıkçası üstesinden gelemedim.

Şöyle olabilir: Diyelim programı A bilgisayarında çalıştırmak istiyorum. Programın içine o bilgisayarın HDD numarasını gireyim, açılışta bunu sorgulayıp çalışmaya başlasın. Eğer farklı bir bilgisayar ise "Programı bu bilgisayarda çalıştırmaya yetkiniz yok." gibi bir mesaj versin.

Yardımlarınızı bekliyorum.
 
Son düzenleme:
Öncelikle bir module aşağıdaki kodları ekleyerek. Seri numarasını öğrenin. (Bu aşama sadece seri no öğrenmek için) Ve öğrendiğiniz seri numarasını not alın.
Kod:
Sub HDDSeriNo()
Dim FS As Object, Surucu As Object
Set FS = CreateObject("Scripting.FileSystemObject")
Set Surucu = FS.GetDrive("C:")
Seri = Surucu.SerialNumber
MsgBox Surucu & " Sürücüsünün Seri Numarası " & Seri

Set Surucu = Nothing
Set FS = Nothing
End Sub
Sonra Bu Çalışma kitabı kısmına aşağıdaki kodları yazın.
Kod:
Private Sub Workbook_Open()
Dim FS As Object, Surucu As Object
Set FS = CreateObject("Scripting.FileSystemObject")
Set Surucu = FS.GetDrive("C:")
Seri = Surucu.SerialNumber
If Seri = "12345678" Then 'Öğrendiğiniz seri numarasını yazın.
    MsgBox "Yetkili girişi"
Else
    Application.DisplayAlerts = False
    ThisWorkbook.Close
End If
Set Surucu = Nothing
Set FS = Nothing
End Sub
 
Hocam,

Sonrasında boş modüle atadığım kod artık işe yaramayacak değil mi?
 
Aynen sadece bir kereliğine seri no öğrenmek için yazdım. Pasif de edebilirsiniz. Silebilirsiniz de.
 
Peki kullanıcı makroları aktif etmeden dosyayı açarsa ne olacak ?

Dosyaya ve kodlara yine ulaşır. Bu konularda birazcık tecrübeli birisi olarak söyleyeyim ...... VBA ile dosya şifrelemeye çalışmak sadece sizin kod yazma pratiğinizi arttırır. Güvenlik anlamında bir şey katmaz.

Selamlar,
 
Peki kullanıcı makroları aktif etmeden dosyayı açarsa ne olacak ?

Dosyaya ve kodlara yine ulaşır. Bu konularda birazcık tecrübeli birisi olarak söyleyeyim ...... VBA ile dosya şifrelemeye çalışmak sadece sizin kod yazma pratiğinizi arttırır. Güvenlik anlamında bir şey katmaz.

Selamlar,

VBA şifrelenirse sıradan bir kullanıcı için bu yöntem işe yarayacaktır.
Diğer türlü en kompleks .exe dosyalarının bile kırıldığını herkes biliyor.
 
Geri
Üst