• DİKKAT

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

User Form İle Lisans Girme

İşler içinden çıkılmaz bir hal aldığı için yardımınıza ihtiyacım var. Rica etsem aşağıdaki kodları düzenleyebilirmisiniz.

Bu makro, userform üzerindeki Kaydet butonuna tanımlı olan makro, burada yapmak istediğim. TextBox2'ye doğru değer girildiği takdirde bu değeri C sürücüsünde sistemin izin verdiği bir dizine Txt Metin belgesi olarak kaydetmek.

Kod:
Private Sub CommandButton2_Click()
If TextBox2.Value = "" Or TextBox2.Value = TextBox1.Value Or TextBox2.Value <> Val(TextBox1.Value * 90 * 28 + 430) * 12 Then
MsgBox "Eksik Yada Hatalı Giriş. Lütfen Lisans Anahtarını Kontrol Ediniz!", vbCritical, "UYARI GEÇERSİZ LİSANS"
ElseIf TextBox2.Value = Val(TextBox1.Value * 90 * 28 + 430) * 12 Then
MsgBox "Sayın " & Application.UserName & vbCrLf & "Programınız Lisanslanmıştır. İyi Günlerde Kullanınız!", vbInformation, "GEÇERLİ LİSANS"
Unload UserForm1
End If
End Sub
 
Son düzenleme:
İstenilen nihai sonuca ulaşıldı. Destek veren herkese çok teşekkür ederim.
 
Sayın TR son halini paylaşırsanız bizim için de faydalı olur. Bilmediğimiz kısımlarda arşivimizde destek olarak durur.
 
Merhaba Sayın askm dosyayı birazdan paylaşacağım, fakat öncesinde iki sorum olacak, umarım siz yada bir başka arkadaş yardımcı olabilir.

Aşağıdaki kod kaydet tıklandığında, C sürücüsüne txt belgesi oluşturmak için kullanılıyor. Bir kaç yöntem denedim fakat kullanıcı izni olmadan C sürücüsü içersine dosya kaydetmek mümkün olmadı. Kullanıcı dosyaları arasına kaydetmenin dışında, yine C sürücüsünde kullanıcı izni gerekmeksizin hangi dizine dosya kaydedebilirim? Eğer başka bir yolu yok ise aşağıda Kullanıcı Adı olarak belirttiğim kısmın kod karşılığı nedir ?

Open "C:\Users\Kullanıcı Adı\VeriEkle.TXT" For Append As #1

İkinci konu (çok elzem bir durum değil bilgi edinmek için)

MsgBox "Sayın " & Application.UserName & vbCrLf & "Programınız Lisanslanmıştır. İyi Günlerde Kullanınız!", vbInformation, "GEÇERLİ LİSANS"

Yukarıdaki mesajda sadece, Application.UserName kısmını nasıl kalın (Bold) yazabilirim. Kod Font.Bold fakat tam olarak nereye yazılması gerekiyor ?
 
Msgboxda bold olduğunu hiç denemedim. Ağ üzerinden çalışan sistemlerde C dizinine izin verilmez. Bunun yerine belgelerim kısmına kayıt yapın bence. Ve gizleme işlemini araştıralım. Ben de sizde. Klasöre atar, Txt olduğu Kladöre gizlersiniz.
 
Evet belgelerime kaydedip kaydettiğimiz dosyayı gizlemek daha mantıklı olacaktır. Peki gizlenmiş dosyayı açılışta kontrol ettirebilirmiyiz ? Yani gizlenmiş olan dosya açılış sorgusunda dosyanın olup olmadığı, sorun olurmu?

"C:\Kullanıcılar\Kullanıcı Adı\Belgelerim\VeriEkle.TXT" kodunu;
"C:\Users\UserName\Documents\VeriEkle.TXT"
"C:\Users\"User Name"\Documents\VeriEkle.TXT"
"C:\Users\User\Documents\VeriEkle.TXT" şekillerinde denedim fakat hepsinde hata verdi. Tam ve doğru yolu bilen biri yardımcı olursa çok sevinirim.
 
Msgbox standarttır.Değişmez.Api ile yapılabilir ama attığınız taş ürküttüğünüz kurbağaya değmez.
Belgelerim klasörü için aşağıdaki kodu kullanabilirsiniz.
Kod:
MsgBox CreateObject("wscript.shell").SpecialFolders(16)
 
Sayın Orion öncelikle bilgilendirme için çok teşekkür ederim. Kaydetme işleminde kullandığım kod aşağıda tam olarak nasıl değiştirmem gerekiyor ?

Tabi kodun öncesinde şartların uygulandığı kısım var tamamı bu kısım değil !

Kod:
Open "C:\Users\Username\Documents\VeriEkle.TXT" For Append As #1
      Print #1, UserForm1.TextBox2.Text
   Close #1
 
Buyurun.:cool:
Kod:
Dim yol As String
yol = CreateObject("wscript.shell").SpecialFolders(16)
Open yol & "\VeriEkle.TXT" For Append As #1
 
Sayın Orion1 çok teşekkür ederim sorunsuz çalışıyor. Böyle tek tek soruyormuş gibi olacak ama, kaydetme makrosunu değiştirince dosya açılışındaki sorgu makrosunuda revize etmek gerekti. Bir kaç değişiklik yaptım ama dosyayı bir türlü bulduramadım. Size zahmet olacak ama rica etsem aşağıdaki kodu nasıl değiştirmem gerekiyor söylerseniz işlem tamamlanmış olacak.

Kod:
Sub Sorgu()
Dim eb, cizgi
Set eb = CreateObject("Scripting.FileSystemObject")
cizgi = eb.FileExists("C:\Users\Username\Documents\VeriEkle.txt")
If cizgi = True Then
MsgBox "Sayın " & Application.UserName & " Hoş Geldiniz!"
Else
MsgBox "Geçersiz Lisans. Lütfen Geçerli Bir Lisans Anahtarı Giriniz!", vbExclamation
UserForm1.Show
End If
End Sub

Tekrar bir soruyla meşgul etmemek adına, oluşturmuş olduğumuz TXT belgesini aynı zamanda gizli yapmamız mümkünmü ?
 
Buyurun.:cool:
Kod:
Dim yol As String
yol = CreateObject("wscript.shell").SpecialFolders(16)
cizgi = eb.FileExists(yol & "\VeriEkle.txt")
 
Yol'u bi tek orda denememiştim :) cizgi = eb.FileExists(yol & "\VeriEkle.txt") bu kısım hata verdi
 
Yol'u bi tek orda denememiştim :) cizgi = eb.FileExists(yol & "\VeriEkle.txt") bu kısım hata verdi

sub prosedürün başlangıcı ile sonuna kadar olan yeri buraya yapıştırırmısınız?
 
Sub Sorgu()
Dim yol As String
Dim eb, cizgi
yol = CreateObject("wscript.shell").SpecialFolders(16)
cizgi = eb.FileExists(yol & "\VeriEkle.txt")
If cizgi = True Then
MsgBox "Sayın " & Application.UserName & " Hoş Geldiniz!"
Else
MsgBox "Geçersiz Lisans. Lütfen Geçerli Bir Lisans Anahtarı Giriniz!", vbExclamation
UserForm1.Show
End If
End Sub
 
Hani benim verdiğim kodlar nerede?
Hata veriyor yazmıştınız ya onlarda içinde olsun.:cool:
 
Bu sizin verdiğiniz kodlardan önceki hali
Kod:
Sub Sorgu()
Dim eb, cizgi
Set eb = CreateObject("Scripting.FileSystemObject")
cizgi = eb.FileExists("C:\Users\Username\Documents\VeriEkle.txt")
If cizgi = True Then
MsgBox "Sayın " & Application.UserName & " Hoş Geldiniz!"
Else
MsgBox "Geçersiz Lisans. Lütfen Geçerli Bir Lisans Anahtarı Giriniz!", vbExclamation
UserForm1.Show
End If
End Sub

Bu da sizin verdiğiniz kodların eklenmiş hali. Ben mi yanlış anladım yoksa , maalesef çok fazla kod bilgim yok araştırarak bakarak bir şeyler yapmaya çalışıyorum.

Kod:
Sub Sorgu()
Dim yol As String
Dim eb, cizgi
yol = CreateObject("wscript.shell").SpecialFolders(16)
cizgi = eb.FileExists(yol & "\VeriEkle.txt")
If cizgi = True Then
MsgBox "Sayın " & Application.UserName & " Hoş Geldiniz!"
Else
MsgBox "Geçersiz Lisans. Lütfen Geçerli Bir Lisans Anahtarı Giriniz!", vbExclamation
UserForm1.Show
End If
End Sub
 
Kırmızı yeri eklemeyi unutmuşsunuz.:cool:
Kod:
Sub Sorgu()
Dim yol As String
Dim eb, cizgi
[B][COLOR="Red"]Set eb = CreateObject("Scripting.FileSystemObject")[/COLOR][/B]
yol = CreateObject("wscript.shell").SpecialFolders(16)
cizgi = eb.FileExists(yol & "\VeriEkle.txt")
If cizgi = True Then
MsgBox "Sayın " & Application.UserName & " Hoş Geldiniz!"
Else
MsgBox "Geçersiz Lisans. Lütfen Geçerli Bir Lisans Anahtarı Giriniz!", vbExclamation
UserForm1.Show
End If
End Sub
 
Ben sanırım cihazı söküp toplama aşamasında fazla parça çıkaranlardanım :) çok ama çok teşekkür ederim elinize sağlık. Dosya şuan tamamen tamamlanmış oldu. Hocam son soru olmasada olur ama olursa güzel olur. Oluşturduğumuz txt dosyasını aynı zamanda gizli olarak kaydedebilirmiyiz ?
 
Ben sanırım cihazı söküp toplama aşamasında fazla parça çıkaranlardanım :) çok ama çok teşekkür ederim elinize sağlık. Dosya şuan tamamen tamamlanmış oldu. Hocam son soru olmasada olur ama olursa güzel olur. Oluşturduğumuz txt dosyasını aynı zamanda gizli olarak kaydedebilirmiyiz ?
şimdi geç oldu.ona yarın bakarız.
 
Tamam hocam, çok teşekkür ederim onuda tamamladıktan sonra dosyayı buradan paylaşacağım ihtiyacı olan arkadaşlar da faydalanırlar umarım.
Biliyorum çok güvenlikli bir yol değil imkansız bir yöntem değil ama küçük çapta en azından dosyalarımıza bir güvenlik sekmesi eklemiş olacağız tekrardan destek veren herkese çok teşekkür ederim.
 
Geri
Üst