Harf Yerine Sayı Basmak
-
Selam arkadaşlar bana harf yerine sayı basacak ve bu sayıları tek tuşla encode edecek.Sayılarıda harfe çevirecek Visual basic kodu lazım.Yardımlarınızı bekliyorum.
-
anlayamadımki ne yapmaya çalıştığını
-
CHaRMaNDeR bunu yazdı:
-----------------------------
anlayamadımki ne yapmaya çalıştığını
-----------------------------
mesela a yerine 1 b yerine 2 c yerine 3
sen a b c ye basınca 123 olcak
adam da onu abcye çevircek.ama 12 ve 3 olursa ne olur bilemem.yani bi 12 bi de 3 kodu varsa.hepsinin başınca 0 olcak mesela
010203 şeklinde.o zmn işe yarar...
anla yani...
kendin kodlasan daha kolay olur arkadasım
-
Dostum kendin kodla demişsin nasıl olacak bu iş ben otomatik bir program istiyorum yazıyı yazdığımda decode ve encode edebilecek bir program sayıların yan yana gelmesini yazmışsın onu da sen düşün sence nasıl bişi yapılabilir.Arkadaşlar lütfen yardım bekliyorum
-
Fear_DaRkNeSs bunu yazdı:
-----------------------------
Dostum kendin kodla demişsin nasıl olacak bu iş ben otomatik bir program istiyorum yazıyı yazdığımda decode ve encode edebilecek bir program sayıların yan yana gelmesini yazmışsın onu da sen düşün sence nasıl bişi yapılabilir.Arkadaşlar lütfen yardım bekliyorum
-----------------------------
abi sen şifrelememi istiyorsun?. o zaman hex komutunu kullan.
örneğin
2 textbox ve 1 command button ekle ve şunu yapıştır
private sub command1_click()
text2.text = ""
for i = 1 to len (text1.text )
text2.text = text2.text & hex (mid (text1.text ,i,1)
next i
end sub
-
eğer büyük metinletde hız işlem real time işlme yapmak istersen Sub Classing bir çözüm olabilir..
#########
Form'a bir adet text box koy....
Private Sub Form_Load()
ReDim Stat(0 To 2) As Long
Stat(0) = SetWindowLong(Text1.hWnd, (-4), AddressOf TextProc)
Stat(1) = 1
Stat(2) = 1
End Sub
Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
SetWindowLong Text1.hWnd, (-4), Stat(0)
End Sub
---------
Bir adet module ekle....
Option Explicit
Public Declare Function CallWindowProc Lib "user32" Alias "CallWindowProcA" (ByVal lpPrevWndFunc As Long, ByVal hWnd As Long, ByVal Msg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
Public Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hWnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
Public Stat() As Long
Public Function TextProc(ByVal hWnd As Long, ByVal uMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
If (uMsg = 257) Then
If (wParam >= &H30) Or (wParam <= &H39) Then
Stat(1) = 0
frmmain.Text1.Text = frmmain.Text1.Text & Chr(wParam + &H12)
frmmain.Text1.SelStart = Len(frmmain.Text1.Text)
frmmain.Text1.SelLength = 0
TextProc = 0
Else
Stat(1) = 1
TextProc = CallWindowProc(Stat(0), hWnd, uMsg, wParam, lParam)
End If
ElseIf (uMsg = 258) Then
If Stat(1) = 1 Then
TextProc = CallWindowProc(Stat(0), hWnd, uMsg, wParam, lParam)
If Stat(2) = 1 Then
Stat(2) = 0
frmmain.Text1.Text = Mid(frmmain.Text1.Text, 2, Len(frmmain.Text1.Text) - 1)
End If
Else
TextProc = 0
End If
Else
TextProc = CallWindowProc(Stat(0), hWnd, uMsg, wParam, lParam)
End If
End Function
-
Eğer formun ismini frmmain olarak değiştirmezsen bu kod Visual Basic'i kapatıyor.
Her neyse, bu kod istediği şey değil sanırım. -
Al bakalım.Normalde kasmam ama biraz da ne yapabileceğimi göstereyim dedim:
Bir adet text box , bir command button ,bir label ve bir timer koy ve kodu kopyala yapıştır.
EN SON HALİ:
Dim spec As Integer
Private Sub Command1_Click()
On Error GoTo olmadı
If Len(Text1) Mod 3 <> 0 Then GoTo olmadı
For i = 0 To Len(Text1) / 3 - 1
Label1 = Label1 + Chr$(Mid$(Text1, i * 3 + 1, 3))
Next
Text1 = Label1
Label1 = ""
Exit Sub
olmadı:
Label1 = ""
MsgBox "Bu kod geçersizdir", vbInformation + vbOKOnly, "Hata"
End Sub
Private Sub Form_Load()
Text1 = ""
Label1 = ""
Label1.Visible = True
Timer1.Enabled = False
Timer1.Interval = 10
Command1.Caption = "Şifreyi Çöz"
End Sub
Private Sub Text1_KeyPress(KeyAscii As Integer)
On Error Resume Next
spec = spec + 1
Timer1.Enabled = True
If Val(KeyAscii) = 8 Then
Exit Sub
End If
If Len(Trim$(KeyAscii)) = 1 Then keycode2$ = "00" & Trim$(Str$(KeyAscii))
If Len(Trim$(KeyAscii)) = 2 Then keycode2$ = "0" & Trim$(Str$(KeyAscii))
If Len(Trim$(KeyAscii)) = 3 Then keycode2$ = Trim$(Str$(KeyAscii))
Text1 = Text1 + keycode2$
End Sub
Private Sub Timer1_Timer()
On Error Resume Next
Text1 = Right$(Text1, Len(Text1) - spec)
spec = 0
Timer1.Enabled = False
End Sub
-
crypt istiyorsan en iyisi md5 encryp tir. ama bu şifre girişleri için. diğerlerinde kullanılmaz
-
mesele cyrpt değil , harf yerine sayı basmak.
Bunun güvenilir olması istenmemiş -
MD5 Encryption algoritması değildir. Bir hash algoritmasıdır (Message Digest Algorithm). Büyük metin dosyalarını, binary dosyaları ya da stringleri bunlara nazaran küçük sayılara dönüştürmeye yarar. Checksum gibi bir şey. Şifre için de kullanılabilir, o ayrı konu.
Toplam Hit: 4127 Toplam Mesaj: 12