Klavye Tuşları ASCII Kod Değerleri [ Vb.Net ]

Maveraün Nehr

Katılımcı Üye
25 Haz 2021
973
1,850
41.303921, -81.901693
Hayırlı günler bugün sizlere yararlı olduğunu düşündüğüm bir konu hakkında okumuş olduğum bir makaleyi harf düzeltmeleri yaparak biraz da kendimden katarak paylaşmak istedim.
Bir metin bilgisini bilgisayar hafızasında temsil edebilmek için, bilgisayar sistemi, her harf yada sembol için bir sayısal değer atar. Hangi sembol için hangi sayının atanacağı kullanılacak kodlama sistemine bağlıdır. Neticede her harf ve sembolün bir sayısal karşılığı ve sayının da bilgisayar belleğinde veya depolama aygıtlarında saklanan bir ikilik sistem karşılığı vardır.


Screenshot_2-b7743e33-7c80-4d13-af82-77afe90253e5.png

Sembollerin sayısal karşılıklarını belirleyerek, sayısal olmayan ya da alfabetik türdeki bilgiyi bilgisayarda temsil etmek amacıyla kullanılan kodlama sistemlerinden en yaygın olarak kullanılan ASCII kodlama sistemdir.

ASCII sözcüğü American Standart Code For Information Interchange sözcüklerinin koyu yazılmış ilk harflerinden oluşan yapay bir sözcüktür. ASCII kodlama sistemi her sembol için 8 bit kullanmaktadır. Sekiz bit kullanarak 0 ila 255 rakamları ile toplam 256 adet sembol temsil edilebilmektedir. ASCII kodlama sistemi 1963 yılında tanımlanmıştır. Tablo 1 ve Tablo 2 de ASCII kodlar ve karşılığı karakterler verilmiştir. Onluk sistemdeki (Decimal) ASCII kodlar ve karakter karşılıkları bu tablolarda görülmektedir.

Örneğin KAR kelimesi 75 , 65 ve 82 nolu ASCII karakterlerdir ve bilgisayarda ikili sayı sistemi karşılığı olan


Screenshot_3-10c3d167-b94d-4beb-a6b2-a35a5ea7e04b.png


--Standart ASCII kod tablosu--

ASCII-Table-3a854dbe-5e3b-4c56-8c2e-5b5c1359d44d.png

--Genişletilmiş ASCII kod tablosu--

Screenshot_4-207933a2-957d-4f94-baf5-bbe97e28434c.png

Gelelim biz kendi klavyemizdeki bastığımız tuşların desimal kodlarına nasıl ulaşacağız, belki önemsiz gibi görülebilir ama ummadık anda problem olarak karşımıza çıkabilir. Bunun için klavyemizi dinlemeye almamız gerek, bunun için Windows Api'lerinden 'users32' sistem fonksiyonunu kullanacağız. Sonrasında her tuşa bastığımızda o tuş değerine ait Ascii tablosundaki desimal değeri klavyenin sisteme gönderdiği değerden almamız gerekiyor. Bunun için küçük mü küçük bir kod parçası ile görebiliriz.

-Aynı zamanda keylogger benzeri tuş kaydeden programlarda bir yöntem olarak kullanılabilir diye düşünüyorum.

Gerekenler;

1 adet listbox bize istenen değeri eklemesi için

1 adet timer içerisine kod gireceğiz değeri anında bulması için
1 adet textbox hanig değerin karşılığını bulmamızda bize yardımcı olması için


Kod;


Kod:
 Private Declare Function GetAsyncKeyState Lib "user32" (ByVal vkey As Integer) As Short
 
    Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick
 
        For i As Integer = 0 To 300
            If GetAsyncKeyState(i) Then
                ListBox1.Items.Add(TextBox1.Text.ToUpper & " " & "Tusunun Desimal Kodu :" & " " & i)
                TextBox1.Clear()
            End If
        Next
 
    End Sub

Örnek Form Düzenim;

Screenshot_5-425794f6-8f17-4a13-9d6c-09fbaf070c0f.png


Umarım yararlı olur.

Yararlandığım kaynak tıklayın




 
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.