Jump to content

Recommended Posts

Posted

Tou a tentar fazer com que todas as teclas sejam "capturadas " pelo vb mas até agora vejo q é meio impossivel porque nao fica nem com timers nem com nada ... O trabalho dificil já o fiz que foi fazer a mapeação das teclas para o keyboard portugues mas nao consigo colocar as teclas digitadas na textbox

Eis o código

Ps: faltou os dims e os imports

Imports System.Windows.Forms
Public Class Form1
    Dim quinze As String = Nothing
    Dim keys As System.Windows.Forms.Keys

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

    End Sub

    Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
        TextBox1.Text = quinze

    End Sub
    Public Function Teclas()
        If My.Computer.Keyboard.ShiftKeyDown = False And My.Computer.Keyboard.CapsLock = False Then 
            If keys = keys.A Then
                quinze += "a"
            ElseIf keys = keys.B Then
                quinze += "b"
            ElseIf keys = keys.C Then
                quinze += "c"
            ElseIf keys = keys.D Then
                quinze += "d"
            ElseIf keys = keys.E Then
                quinze += "e"
            ElseIf keys = keys.F Then
                quinze += "f"
            ElseIf keys = keys.G Then
                quinze += "g"
            ElseIf keys = keys.H Then
                quinze += "h"
            ElseIf keys = keys.I Then
                quinze += "i"
            ElseIf keys = keys.J Then
                quinze += "j"
            ElseIf keys = keys.K Then
                quinze += "k"
            ElseIf keys = keys.L Then
                quinze += "l"
            ElseIf keys = keys.M Then
                quinze += "m"
            ElseIf keys = keys.N Then
                quinze += "n"
            ElseIf keys = keys.O Then
                quinze += "o"
            ElseIf keys = keys.P Then
                quinze += "p"
            ElseIf keys = keys.Q Then
                quinze += "q"
            ElseIf keys = keys.R Then
                quinze += "r"
            ElseIf keys = keys.S Then
                quinze += "s"
            ElseIf keys = keys.T Then
                quinze += "t"
            ElseIf keys = keys.U Then
                quinze += "u"
            ElseIf keys = keys.V Then
                quinze += "v"
            ElseIf keys = keys.W Then
                quinze += "w"
            ElseIf keys = keys.X Then
                quinze += "x"
            ElseIf keys = keys.Y Then
                quinze += "y"
            ElseIf keys = keys.Z Then
                quinze += "[111]"
            ElseIf keys = keys.D0 Then
                quinze += "0"
            ElseIf keys = keys.D1 Then
                quinze += "1"
            ElseIf keys = keys.D2 Then
                quinze += "2"
            ElseIf keys = keys.D3 Then
                quinze += "3"
            ElseIf keys = keys.D4 Then
                quinze += "4"
            ElseIf keys = keys.D5 Then
                quinze += "5"
            ElseIf keys = keys.D6 Then
                quinze += "6"
            ElseIf keys = keys.D7 Then
                quinze += "7"
            ElseIf keys = keys.D8 Then
                quinze += "8"
            ElseIf keys = keys.D9 Then
                quinze += "9"
            ElseIf keys = keys.NumPad0 Then
                quinze += "0"
            ElseIf keys = keys.NumPad1 Then
                quinze += "1"
            ElseIf keys = keys.NumPad2 Then
                quinze += "2"
            ElseIf keys = keys.NumPad3 Then
                quinze += "3"
            ElseIf keys = keys.NumPad4 Then
                quinze += "4"
            ElseIf keys = keys.NumPad5 Then
                quinze += "5"
            ElseIf keys = keys.NumPad6 Then
                quinze += "6"
            ElseIf keys = keys.NumPad7 Then
                quinze += "7"
            ElseIf keys = keys.NumPad8 Then
                quinze += "8"
            ElseIf keys = keys.NumPad9 Then
                quinze += "9"
            ElseIf keys = keys.Oemcomma Then
                quinze += ","
            ElseIf keys = keys.OemMinus Then
                quinze += "-"
            ElseIf keys = keys.OemQuotes Then
                quinze += "'"
            ElseIf keys = keys.OemOpenBrackets Then
                quinze += "["
            ElseIf keys = keys.OemCloseBrackets Then
                quinze += "]"
            ElseIf keys = keys.OemQuestion Then
                quinze += "/"
            ElseIf keys = keys.OemPipe Then
                quinze += "\"
            ElseIf keys = keys.Oem1 Then
                quinze += ";"
            ElseIf keys = keys.OemPeriod Then
                quinze += "."
            ElseIf keys = keys.Oemtilde Then
                quinze += "`"
            ElseIf keys = keys.Space Then
                quinze += " "
            ElseIf keys = keys.Enter Then
                quinze += vbNewLine
            ElseIf keys = keys.F1 Then
                quinze += "[F1]"
            ElseIf keys = keys.F2 Then
                quinze += "[F2]"
            ElseIf keys = keys.F3 Then
                quinze += "[F3]"
            ElseIf keys = keys.F4 Then
                quinze += "[F4]"
            ElseIf keys = keys.F5 Then
                quinze += "[F5]"
            ElseIf keys = keys.F6 Then
                quinze += "[F6]"
            ElseIf keys = keys.F7 Then
                quinze += "[F7]"
            ElseIf keys = keys.F8 Then
                quinze += "[F8]"
            ElseIf keys = keys.F9 Then
                quinze += "[F9]"
            ElseIf keys = keys.F10 Then
                quinze += "[F10]"
            ElseIf keys = keys.F11 Then
                quinze += "[F11]"
            ElseIf keys = keys.F12 Then
                quinze += "[F12]"
            ElseIf keys = keys.Delete Then
                If Not quinze.EndsWith(vbNewLine) Then
                    If Not quinze.EndsWith("|") Then
                        If Not quinze.EndsWith("]") Then
                            quinze = quinze.Substring(0, quinze.Length - 1)
                        End If
                    End If
                End If
            ElseIf keys = keys.Back Then
                If Not quinze.EndsWith(vbNewLine) Then
                    If Not quinze.EndsWith("|") Then
                        If Not quinze.EndsWith("]") Then
                            quinze = quinze.Substring(0, quinze.Length - 1)
                        End If
                    End If
                End If
            ElseIf keys = keys.Down Then
                quinze += ""
            ElseIf keys = keys.Up Then
                quinze += ""
            ElseIf keys = keys.Left Then
                quinze += ""
            ElseIf keys = keys.Right Then
                quinze += ""
            ElseIf keys = keys.Tab Then
                quinze += "[TAB]"
            ElseIf keys = keys.End Then
                quinze += "[END]"
            ElseIf keys = keys.Escape Then
                quinze += "[ESC]"
            ElseIf keys = keys.Divide Then
                quinze += "/"
            ElseIf keys = keys.Decimal Then
                quinze += "."
            ElseIf keys = keys.Subtract Then
                quinze += "-"
            ElseIf keys = keys.Add Then
                quinze += "+"
            ElseIf keys = keys.Multiply Then
                quinze += "*"
            ElseIf keys = keys.ControlKey Then
                quinze += "[CTRL]"
            ElseIf keys = keys.Alt Then
                quinze += "[ALT]"
            ElseIf keys = keys.PageUp Then
                quinze += "[Page Up]"
            ElseIf keys = keys.PageDown Then
                quinze += "[Page Down]"
            ElseIf keys = keys.Home Then
                quinze += "[Home]"
            ElseIf keys = keys.Insert Then
                quinze += "[insert]"
            ElseIf keys = keys.End Then
                quinze += "[End]"
            ElseIf keys = keys.Escape Then
                quinze += "[Esc]"
            ElseIf keys = keys.PrintScreen Then
                quinze += "[Prt Screen]"
            End If

        ElseIf My.Computer.Keyboard.ShiftKeyDown = False And My.Computer.Keyboard.CapsLock = True Then
            If keys = keys.A Then
                quinze += "A"
            ElseIf keys = keys.B Then
                quinze += "B"
            ElseIf keys = keys.C Then
                quinze += "C"
            ElseIf keys = keys.D Then
                quinze += "D"
            ElseIf keys = keys.E Then
                quinze += "E"
            ElseIf keys = keys.F Then
                quinze += "F"
            ElseIf keys = keys.G Then
                quinze += "G"
            ElseIf keys = keys.H Then
                quinze += "H"
            ElseIf keys = keys.I Then
                quinze += "I"
            ElseIf keys = keys.J Then
                quinze += "J"
            ElseIf keys = keys.K Then
                quinze += "K"
            ElseIf keys = keys.L Then
                quinze += "L"
            ElseIf keys = keys.M Then
                quinze += "M"
            ElseIf keys = keys.N Then
                quinze += "N"
            ElseIf keys = keys.O Then
                quinze += "O"
            ElseIf keys = keys.P Then
                quinze += "P"
            ElseIf keys = keys.Q Then
                quinze += "Q"
            ElseIf keys = keys.R Then
                quinze += "R"
            ElseIf keys = keys.S Then
                quinze += "S"
            ElseIf keys = keys.T Then
                quinze += "T"
            ElseIf keys = keys.U Then
                quinze += "U"
            ElseIf keys = keys.V Then
                quinze += "V"
            ElseIf keys = keys.W Then
                quinze += "W"
            ElseIf keys = keys.X Then
                quinze += "X"
            ElseIf keys = keys.Y Then
                quinze += "Y"
            ElseIf keys = keys.Z Then
                quinze += "Z"
            ElseIf keys = keys.D0 Then
                quinze += "0"
            ElseIf keys = keys.D1 Then
                quinze += "1"
            ElseIf keys = keys.D2 Then
                quinze += "2"
            ElseIf keys = keys.D3 Then
                quinze += "3"
            ElseIf keys = keys.D4 Then
                quinze += "4"
            ElseIf keys = keys.D5 Then
                quinze += "5"
            ElseIf keys = keys.D6 Then
                quinze += "6"
            ElseIf keys = keys.D7 Then
                quinze += "7"
            ElseIf keys = keys.D8 Then
                quinze += "8"
            ElseIf keys = keys.D9 Then
                quinze += "9"
            ElseIf keys = keys.NumPad0 Then
                quinze += "0"
            ElseIf keys = keys.NumPad1 Then
                quinze += "1"
            ElseIf keys = keys.NumPad2 Then
                quinze += "2"
            ElseIf keys = keys.NumPad3 Then
                quinze += "3"
            ElseIf keys = keys.NumPad4 Then
                quinze += "4"
            ElseIf keys = keys.NumPad5 Then
                quinze += "5"
            ElseIf keys = keys.NumPad6 Then
                quinze += "6"
            ElseIf keys = keys.NumPad7 Then
                quinze += "7"
            ElseIf keys = keys.NumPad8 Then
                quinze += "8"
            ElseIf keys = keys.NumPad9 Then
                quinze += "9"
            ElseIf keys = keys.Oemcomma Then
                quinze += ","
            ElseIf keys = keys.OemMinus Then
                quinze += "-"
            ElseIf keys = keys.OemQuotes Then
                quinze += "'"
            ElseIf keys = keys.OemOpenBrackets Then
                quinze += "["
            ElseIf keys = keys.OemCloseBrackets Then
                quinze += "]"
            ElseIf keys = keys.OemQuestion Then
                quinze += "/"
            ElseIf keys = keys.OemPipe Then
                quinze += "\"
            ElseIf keys = keys.Oem1 Then
                quinze += ";"
            ElseIf keys = keys.OemPeriod Then
                quinze += "."
            ElseIf keys = keys.Oemtilde Then
                quinze += "`"
            ElseIf keys = keys.Space Then
                quinze += " "
            ElseIf keys = keys.Enter Then
                quinze += vbNewLine
            ElseIf keys = keys.F1 Then
                quinze += "[F1]"
            ElseIf keys = keys.F2 Then
                quinze += "[F2]"
            ElseIf keys = keys.F3 Then
                quinze += "[F3]"
            ElseIf keys = keys.F4 Then
                quinze += "[F4]"
            ElseIf keys = keys.F5 Then
                quinze += "[F5]"
            ElseIf keys = keys.F6 Then
                quinze += "[F6]"
            ElseIf keys = keys.F7 Then
                quinze += "[F7]"
            ElseIf keys = keys.F8 Then
                quinze += "[F8]"
            ElseIf keys = keys.F9 Then
                quinze += "[F9]"
            ElseIf keys = keys.F10 Then
                quinze += "[F10]"
            ElseIf keys = keys.F11 Then
                quinze += "[F11]"
            ElseIf keys = keys.F12 Then
                quinze += "[F12]"
            ElseIf keys = keys.Delete Then
                If Not quinze.EndsWith(vbNewLine) Then
                    If Not quinze.EndsWith("|") Then
                        If Not quinze.EndsWith("]") Then
                            quinze = quinze.Substring(0, quinze.Length - 1)
                        End If
                    End If
                End If
            ElseIf keys = keys.Back Then
                If Not quinze.EndsWith(vbNewLine) Then
                    If Not quinze.EndsWith("|") Then
                        If Not quinze.EndsWith("]") Then
                            quinze = quinze.Substring(0, quinze.Length - 1)
                        End If
                    End If
                End If
            ElseIf keys = keys.Down Then
                quinze += ""
            ElseIf keys = keys.Up Then
                quinze += ""
            ElseIf keys = keys.Left Then
                quinze += ""
            ElseIf keys = keys.Right Then
                quinze += ""
            ElseIf keys = keys.Tab Then
                quinze += "[TAB]"
            ElseIf keys = keys.End Then
                quinze += "[END]"
            ElseIf keys = keys.Escape Then
                quinze += "[ESC]"
            ElseIf keys = keys.Divide Then
                quinze += "/"
            ElseIf keys = keys.Decimal Then
                quinze += "."
            ElseIf keys = keys.Subtract Then
                quinze += "-"
            ElseIf keys = keys.Add Then
                quinze += "+"
            ElseIf keys = keys.Multiply Then
                quinze += "*"
            ElseIf keys = keys.ControlKey Then
                quinze += "[CTRL]"
            ElseIf keys = keys.Alt Then
                quinze += "[ALT]"
            ElseIf keys = keys.PageUp Then
                quinze += "[Page Up]"
            ElseIf keys = keys.PageDown Then
                quinze += "[Page Down]"
            ElseIf keys = keys.Home Then
                quinze += "[Home]"
            ElseIf keys = keys.Insert Then
                quinze += "[insert]"
            ElseIf keys = keys.End Then
                quinze += "[End]"
            ElseIf keys = keys.Escape Then
                quinze += "[Esc]"
            ElseIf keys = keys.PrintScreen Then
                quinze += "[Prt Screen]"
            End If
        ElseIf My.Computer.Keyboard.ShiftKeyDown = True And My.Computer.Keyboard.CapsLock = True Then
            If keys = keys.D1 Then
                quinze += "!"
            ElseIf keys = keys.D2 Then
                quinze += "@"
            ElseIf keys = keys.D3 Then
                quinze += "#"
            ElseIf keys = keys.D4 Then
                quinze += "$"
            ElseIf keys = keys.D5 Then
                quinze += "%"
            ElseIf keys = keys.D6 Then
                quinze += "^"
            ElseIf keys = keys.D7 Then
                quinze += "&"
            ElseIf keys = keys.D8 Then
                quinze += "*"
            ElseIf keys = keys.D9 Then
                quinze += "("
            ElseIf keys = keys.D0 Then
                quinze += ")"
            ElseIf keys = keys.A Then
                quinze += "A"
            ElseIf keys = keys.B Then
                quinze += "B"
            ElseIf keys = keys.C Then
                quinze += "C"
            ElseIf keys = keys.D Then
                quinze += "D"
            ElseIf keys = keys.E Then
                quinze += "E"
            ElseIf keys = keys.F Then
                quinze += "F"
            ElseIf keys = keys.G Then
                quinze += "G"
            ElseIf keys = keys.H Then
                quinze += "H"
            ElseIf keys = keys.I Then
                quinze += "I"
            ElseIf keys = keys.J Then
                quinze += "J"
            ElseIf keys = keys.K Then
                quinze += "K"
            ElseIf keys = keys.L Then
                quinze += "L"
            ElseIf keys = keys.M Then
                quinze += "M"
            ElseIf keys = keys.N Then
                quinze += "N"
            ElseIf keys = keys.O Then
                quinze += "O"
            ElseIf keys = keys.P Then
                quinze += "P"
            ElseIf keys = keys.Q Then
                quinze += "Q"
            ElseIf keys = keys.R Then
                quinze += "R"
            ElseIf keys = keys.S Then
                quinze += "S"
            ElseIf keys = keys.T Then
                quinze += "T"
            ElseIf keys = keys.U Then
                quinze += "U"
            ElseIf keys = keys.V Then
                quinze += "V"
            ElseIf keys = keys.W Then
                quinze += "W"
            ElseIf keys = keys.X Then
                quinze += "X"
            ElseIf keys = keys.Y Then
                quinze += "Y"
            ElseIf keys = keys.Z Then
                quinze += "Z"
            ElseIf keys = keys.Oemcomma Then
                quinze += "<"
            ElseIf keys = keys.OemMinus Then
                quinze += "_"
            ElseIf keys = keys.OemOpenBrackets Then
                quinze += "{"
            ElseIf keys = keys.OemCloseBrackets Then
                quinze += "}"
            ElseIf keys = keys.OemQuestion Then
                quinze += "?"
            ElseIf keys = keys.OemPipe Then
                quinze += "|"
            ElseIf keys = keys.Oem1 Then
                quinze += ":"
            ElseIf keys = keys.OemPeriod Then
                quinze += ">"
            ElseIf keys = keys.Oemtilde Then
                quinze += "~"
            ElseIf keys = keys.OemQuotes Then
                'quinze += *quote*
            ElseIf keys = keys.Space Then
                quinze += " "
            ElseIf keys = keys.Enter Then
                quinze += vbNewLine
            ElseIf keys = keys.F1 Then
                quinze += "[F1]"
            ElseIf keys = keys.F2 Then
                quinze += "[F2]"
            ElseIf keys = keys.F3 Then
                quinze += "[F3]"
            ElseIf keys = keys.F4 Then
                quinze += "[F4]"
            ElseIf keys = keys.F5 Then
                quinze += "[F5]"
            ElseIf keys = keys.F6 Then
                quinze += "[F6]"
            ElseIf keys = keys.F7 Then
                quinze += "[F7]"
            ElseIf keys = keys.F8 Then
                quinze += "[F8]"
            ElseIf keys = keys.F9 Then
                quinze += "[F9]"
            ElseIf keys = keys.F10 Then
                quinze += "[F10]"
            ElseIf keys = keys.F11 Then
                quinze += "[F11]"
            ElseIf keys = keys.F12 Then
                quinze += "[F12]"
            ElseIf keys = keys.Delete Then
                quinze += "[DEL]"
            ElseIf keys = keys.Back Then
                quinze += "[DEL]"
            ElseIf keys = keys.Down Then
                quinze += ""
            ElseIf keys = keys.Up Then
                quinze += ""
            ElseIf keys = keys.Left Then
                quinze += ""
            ElseIf keys = keys.Right Then
                quinze += ""
            ElseIf keys = keys.Tab Then
                quinze += "[TAB]"
            ElseIf keys = keys.End Then
                quinze += "[END]"
            ElseIf keys = keys.Escape Then
                quinze += "[ESC]"
            ElseIf keys = keys.Divide Then
                quinze += "/"
            ElseIf keys = keys.Decimal Then
                quinze += "."
            ElseIf keys = keys.Subtract Then
                quinze += "-"
            ElseIf keys = keys.Add Then
                quinze += "+"
            ElseIf keys = keys.Multiply Then
                quinze += "*"
            ElseIf keys = keys.ControlKey Then
                quinze += "[CTRL]"
            ElseIf keys = keys.Alt Then
                quinze += "[ALT]"
            ElseIf keys = keys.PageUp Then
                quinze += "[Page Up]"
            ElseIf keys = keys.PageDown Then
                quinze += "[Page Down]"
            ElseIf keys = keys.Home Then
                quinze += "[Home]"
            ElseIf keys = keys.Insert Then
                quinze += "[insert]"
            ElseIf keys = keys.End Then
                quinze += "[End]"
            ElseIf keys = keys.Escape Then
                quinze += "[Esc]"
            ElseIf keys = keys.PrintScreen Then
                quinze += "[Prt Screen]"
            End If
        ElseIf My.Computer.Keyboard.ShiftKeyDown = False And My.Computer.Keyboard.CapsLock = True Then
            If keys = keys.D1 Then
                quinze += "1"
            ElseIf keys = keys.D2 Then
                quinze += "2"
            ElseIf keys = keys.D3 Then
                quinze += "3"
            ElseIf keys = keys.D4 Then
                quinze += "4"
            ElseIf keys = keys.D5 Then
                quinze += "5"
            ElseIf keys = keys.D6 Then
                quinze += "6"
            ElseIf keys = keys.D7 Then
                quinze += "7"
            ElseIf keys = keys.D8 Then
                quinze += "8"
            ElseIf keys = keys.D9 Then
                quinze += "9"
            ElseIf keys = keys.D0 Then
                quinze += "0"
            ElseIf keys = keys.A Then
                quinze += "a"
            ElseIf keys = keys.B Then
                quinze += "b"
            ElseIf keys = keys.C Then
                quinze += "c"
            ElseIf keys = keys.D Then
                quinze += "d"
            ElseIf keys = keys.E Then
                quinze += "e"
            ElseIf keys = keys.F Then
                quinze += "f"
            ElseIf keys = keys.G Then
                quinze += "g"
            ElseIf keys = keys.H Then
                quinze += "h"
            ElseIf keys = keys.I Then
                quinze += "i"
            ElseIf keys = keys.J Then
                quinze += "j"
            ElseIf keys = keys.K Then
                quinze += "k"
            ElseIf keys = keys.L Then
                quinze += "l"
            ElseIf keys = keys.M Then
                quinze += "m"
            ElseIf keys = keys.N Then
                quinze += "n"
            ElseIf keys = keys.O Then
                quinze += "o"
            ElseIf keys = keys.P Then
                quinze += "p"
            ElseIf keys = keys.Q Then
                quinze += "q"
            ElseIf keys = keys.R Then
                quinze += "r"
            ElseIf keys = keys.S Then
                quinze += "s"
            ElseIf keys = keys.T Then
                quinze += "t"
            ElseIf keys = keys.U Then
                quinze += "u"
            ElseIf keys = keys.V Then
                quinze += "v"
            ElseIf keys = keys.W Then
                quinze += "w"
            ElseIf keys = keys.X Then
                quinze += "x"
            ElseIf keys = keys.Y Then
                quinze += "y"
            ElseIf keys = keys.Z Then
                quinze += "[111]"
            ElseIf keys = keys.Oemcomma Then
                quinze += ","
            ElseIf keys = keys.OemMinus Then
                quinze += "-"
            ElseIf keys = keys.OemQuotes Then
                quinze += "'"
            ElseIf keys = keys.OemOpenBrackets Then
                quinze += "["
            ElseIf keys = keys.OemCloseBrackets Then
                quinze += "]"
            ElseIf keys = keys.OemQuestion Then
                quinze += "/"
            ElseIf keys = keys.OemPipe Then
                quinze += "\"
            ElseIf keys = keys.Oem1 Then
                quinze += ";"
            ElseIf keys = keys.OemPeriod Then
                quinze += "."
            ElseIf keys = keys.Oemtilde Then
                quinze += "`"
            ElseIf keys = keys.Space Then
                quinze += " "
            ElseIf keys = keys.Enter Then
                quinze += vbNewLine
            ElseIf keys = keys.F1 Then
                quinze += "[F1]"
            ElseIf keys = keys.F2 Then
                quinze += "[F2]"
            ElseIf keys = keys.F3 Then
                quinze += "[F3]"
            ElseIf keys = keys.F4 Then
                quinze += "[F4]"
            ElseIf keys = keys.F5 Then
                quinze += "[F5]"
            ElseIf keys = keys.F6 Then
                quinze += "[F6]"
            ElseIf keys = keys.F7 Then
                quinze += "[F7]"
            ElseIf keys = keys.F8 Then
                quinze += "[F8]"
            ElseIf keys = keys.F9 Then
                quinze += "[F9]"
            ElseIf keys = keys.F10 Then
                quinze += "[F10]"
            ElseIf keys = keys.F11 Then
                quinze += "[F11]"
            ElseIf keys = keys.F12 Then
                quinze += "[F12]"
            ElseIf keys = keys.Delete Then
                If Not quinze.EndsWith(vbNewLine) Then
                    If Not quinze.EndsWith("|") Then
                        If Not quinze.EndsWith("]") Then
                            quinze = quinze.Substring(0, quinze.Length - 1)
                        End If
                    End If
                End If
            ElseIf keys = keys.Back Then
                If Not quinze.EndsWith(vbNewLine) Then
                    If Not quinze.EndsWith("|") Then
                        If Not quinze.EndsWith("]") Then
                            quinze = quinze.Substring(0, quinze.Length - 1)
                        End If
                    End If
                End If
            ElseIf keys = keys.Down Then
                quinze += ""
            ElseIf keys = keys.Up Then
                quinze += ""
            ElseIf keys = keys.Left Then
                quinze += ""
            ElseIf keys = keys.Right Then
                quinze += ""
            ElseIf keys = keys.Tab Then
                quinze += "[TAB]"
            ElseIf keys = keys.End Then
                quinze += "[END]"
            ElseIf keys = keys.Escape Then
                quinze += "[ESC]"
            ElseIf keys = keys.Divide Then
                quinze += "/"
            ElseIf keys = keys.Decimal Then
                quinze += "."
            ElseIf keys = keys.Subtract Then
                quinze += "-"
            ElseIf keys = keys.Add Then
                quinze += "+"
            ElseIf keys = keys.Multiply Then
                quinze += "*"
            ElseIf keys = keys.ControlKey Then
                quinze += "[CTRL]"
            ElseIf keys = keys.Alt Then
                quinze += "[ALT]"
            ElseIf keys = keys.PageUp Then
                quinze += "[Page Up]"
            ElseIf keys = keys.PageDown Then
                quinze += "[Page Down]"
            ElseIf keys = keys.Home Then
                quinze += "[Home]"
            ElseIf keys = keys.Insert Then
                quinze += "[insert]"
            ElseIf keys = keys.End Then
                quinze += "[End]"
            ElseIf keys = keys.Escape Then
                quinze += "[Esc]"
            ElseIf keys = keys.PrintScreen Then
                quinze += "[Prt Screen]"
            End If
        ElseIf My.Computer.Keyboard.ShiftKeyDown = True And My.Computer.Keyboard.CapsLock = False Then
            If keys = keys.D1 Then
                quinze += "!"
            ElseIf keys = keys.D2 Then
                quinze += "@"
            ElseIf keys = keys.D3 Then
                quinze += "#"
            ElseIf keys = keys.D4 Then
                quinze += "$"
            ElseIf keys = keys.D5 Then
                quinze += "%"
            ElseIf keys = keys.D6 Then
                quinze += "^"
            ElseIf keys = keys.D7 Then
                quinze += "&"
            ElseIf keys = keys.D8 Then
                quinze += "*"
            ElseIf keys = keys.D9 Then
                quinze += "("
            ElseIf keys = keys.D0 Then
                quinze += ")"
            ElseIf keys = keys.A Then
                quinze += "A"
            ElseIf keys = keys.B Then
                quinze += "B"
            ElseIf keys = keys.C Then
                quinze += "C"
            ElseIf keys = keys.D Then
                quinze += "D"
            ElseIf keys = keys.E Then
                quinze += "E"
            ElseIf keys = keys.F Then
                quinze += "F"
            ElseIf keys = keys.G Then
                quinze += "G"
            ElseIf keys = keys.H Then
                quinze += "H"
            ElseIf keys = keys.I Then
                quinze += "I"
            ElseIf keys = keys.J Then
                quinze += "J"
            ElseIf keys = keys.K Then
                quinze += "K"
            ElseIf keys = keys.L Then
                quinze += "L"
            ElseIf keys = keys.M Then
                quinze += "M"
            ElseIf keys = keys.N Then
                quinze += "N"
            ElseIf keys = keys.O Then
                quinze += "O"
            ElseIf keys = keys.P Then
                quinze += "P"
            ElseIf keys = keys.Q Then
                quinze += "Q"
            ElseIf keys = keys.R Then
                quinze += "R"
            ElseIf keys = keys.S Then
                quinze += "S"
            ElseIf keys = keys.T Then
                quinze += "T"
            ElseIf keys = keys.U Then
                quinze += "U"
            ElseIf keys = keys.V Then
                quinze += "V"
            ElseIf keys = keys.W Then
                quinze += "W"
            ElseIf keys = keys.X Then
                quinze += "X"
            ElseIf keys = keys.Y Then
                quinze += "Y"
            ElseIf keys = keys.Z Then
                quinze += "Z"
            ElseIf keys = keys.Oemcomma Then
                quinze += "<"
            ElseIf keys = keys.OemMinus Then
                quinze += "_"
            ElseIf keys = keys.OemOpenBrackets Then
                quinze += "{"
            ElseIf keys = keys.OemCloseBrackets Then
                quinze += "}"
            ElseIf keys = keys.OemQuestion Then
                quinze += "?"
            ElseIf keys = keys.OemPipe Then
                quinze += "|"
            ElseIf keys = keys.Oem1 Then
                quinze += ":"
            ElseIf keys = keys.OemPeriod Then
                quinze += ">"
            ElseIf keys = keys.Oemtilde Then
                quinze += "~"
            ElseIf keys = keys.Space Then
                quinze += " "
            ElseIf keys = keys.Enter Then
                quinze += vbNewLine
            ElseIf keys = keys.F1 Then
                quinze += "[F1]"
            ElseIf keys = keys.F2 Then
                quinze += "[F2]"
            ElseIf keys = keys.F3 Then
                quinze += "[F3]"
            ElseIf keys = keys.F4 Then
                quinze += "[F4]"
            ElseIf keys = keys.F5 Then
                quinze += "[F5]"
            ElseIf keys = keys.F6 Then
                quinze += "[F6]"
            ElseIf keys = keys.F7 Then
                quinze += "[F7]"
            ElseIf keys = keys.F8 Then
                quinze += "[F8]"
            ElseIf keys = keys.F9 Then
                quinze += "[F9]"
            ElseIf keys = keys.F10 Then
                quinze += "[F10]"
            ElseIf keys = keys.F11 Then
                quinze += "[F11]"
            ElseIf keys = keys.F12 Then
                quinze += "[F12]"
            ElseIf keys = keys.Delete Then
                If Not quinze.EndsWith(vbNewLine) Then
                    If Not quinze.EndsWith("|") Then
                        If Not quinze.EndsWith("]") Then
                            quinze = quinze.Substring(0, quinze.Length - 1)
                        End If
                    End If
                End If
            ElseIf keys = keys.Back Then
                If Not quinze.EndsWith(vbNewLine) Then
                    If Not quinze.EndsWith("|") Then
                        If Not quinze.EndsWith("]") Then
                            quinze = quinze.Substring(0, quinze.Length - 1)
                        End If
                    End If
                End If
            ElseIf keys = keys.Down Then
                quinze += ""
            ElseIf keys = keys.Up Then
                quinze += ""
            ElseIf keys = keys.Left Then
                quinze += ""
            ElseIf keys = keys.Right Then
                quinze += ""
            ElseIf keys = keys.Tab Then
                quinze += "[TAB]"
            ElseIf keys = keys.End Then
                quinze += "[END]"
            ElseIf keys = keys.Escape Then
                quinze += "[ESC]"
            ElseIf keys = keys.Divide Then
                quinze += "/"
            ElseIf keys = keys.Decimal Then
                quinze += "."
            ElseIf keys = keys.Subtract Then
                quinze += "-"
            ElseIf keys = keys.Add Then
                quinze += "+"
            ElseIf keys = keys.Multiply Then
                quinze += "*"
            ElseIf keys = keys.OemQuotes Then
                'quinze += *quote*
            ElseIf keys = keys.ControlKey Then
                quinze += "[CTRL]"
            ElseIf keys = keys.Alt Then
                quinze += "[ALT]"
            ElseIf keys = keys.PageUp Then
                quinze += "[Page Up]"
            ElseIf keys = keys.PageDown Then
                quinze += "[Page Down]"
            ElseIf keys = keys.Home Then
                quinze += "[Home]"
            ElseIf keys = keys.Insert Then
                quinze += "[insert]"
            ElseIf keys = keys.End Then
                quinze += "[End]"
            ElseIf keys = keys.Escape Then
                quinze += "[Esc]"
            ElseIf keys = keys.PrintScreen Then
                quinze += "[Prt Screen]"
            End If
        End If
    End Function
End Class

E o Impossível foi criado por pessoas fracas pra acabar com o sonho das pessoas fortes. Não deixes que acabem com o teu. Sonha , luta , ambiciona e realiza. Se amas , se gostas tu vais conseguir. Cala todas as pessoas que um dia duvidaram de ti e prova que foste mais forte de qualquer outro.

Posted

Gostei mas nao gostava de usar o metodo Hook ... mais alguma possibilidade usando o código já feito ?

E o Impossível foi criado por pessoas fracas pra acabar com o sonho das pessoas fortes. Não deixes que acabem com o teu. Sonha , luta , ambiciona e realiza. Se amas , se gostas tu vais conseguir. Cala todas as pessoas que um dia duvidaram de ti e prova que foste mais forte de qualquer outro.

Posted

O código já feito não serve para nada...

Estás a testar uma Enum....

O teu código tem a mesma validade deste:

If 0 = 1 Then
ElseIf 0 = 2 Then
ElseIf 0 = 3 Then
ElseIf 0 = 4 Then
'(......)
End If

Para capturar todas teclas que aí tens, vais ter de pensar fora da Framework.

Dentro, e com KeyPreview, só vais conseguir apanhar sem grande complicação, as teclas comuns. Function1-12, Ins, Home, PgUp, etcetc, não apanhas.

Para além disso, não precisavas de mapear tudo isso. Se a enum existe, podes apenas extraír o nome com o valor 😉

PS: O símbolo para concatenar Strings em VB não é o +. É a ampersand: &

PPS: Fui testar, e afinal a Framework apanha-te isso no KeyUp ou KeyDown.

Basta-te o código abaixo e tens tudo mapeado. Agora é ajuste, pois como está, captura-te algo como:

F1F2F3F4F5F6F7F8F9F10F12F11ScrollInsertCapsLockSpaceSpace

    Private Sub Form1_KeyUp(sender As Object, e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyUp
        TextBox1.Text &= Keys.GetName(GetType(Keys), e.KeyData)
    End Sub

    Private Sub Form1_Load(sender As Object, e As System.EventArgs) Handles Me.Load
        Me.KeyPreview = True
    End Sub

Lembra-te que a propriedade KeyPreview pode ser mexida em desenho

Sérgio Ribeiro


"Great coders aren't born. They're compiled and released"
"Expert coders do not need a keyboard. They just throw magnets at the RAM chips"

Posted

enfim ganda treta... fui pesquisar algo na net sem usar o hook mas estão pior que eu

http://www.vsprogramming.com/tutorials/vb-net-keylogger/

E o Impossível foi criado por pessoas fracas pra acabar com o sonho das pessoas fortes. Não deixes que acabem com o teu. Sonha , luta , ambiciona e realiza. Se amas , se gostas tu vais conseguir. Cala todas as pessoas que um dia duvidaram de ti e prova que foste mais forte de qualquer outro.

Posted

O código já feito não serve para nada...

Estás a testar uma Enum....

O teu código tem a mesma validade deste:

If 0 = 1 Then
ElseIf 0 = 2 Then
ElseIf 0 = 3 Then
ElseIf 0 = 4 Then
'(......)
End If

Para capturar todas teclas que aí tens, vais ter de pensar fora da Framework.

Dentro, e com KeyPreview, só vais conseguir apanhar sem grande complicação, as teclas comuns. Function1-12, Ins, Home, PgUp, etcetc, não apanhas.

Para além disso, não precisavas de mapear tudo isso. Se a enum existe, podes apenas extraír o nome com o valor 😉

PS: O símbolo para concatenar Strings em VB não é o +. É a ampersand: &

PPS: Fui testar, e afinal a Framework apanha-te isso no KeyUp ou KeyDown.

Basta-te o código abaixo e tens tudo mapeado. Agora é ajuste, pois como está, captura-te algo como:

F1F2F3F4F5F6F7F8F9F10F12F11ScrollInsertCapsLockSpaceSpace

    Private Sub Form1_KeyUp(sender As Object, e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyUp
        TextBox1.Text &= Keys.GetName(GetType(Keys), e.KeyData)
    End Sub

    Private Sub Form1_Load(sender As Object, e As System.EventArgs) Handles Me.Load
        Me.KeyPreview = True
    End Sub

Lembra-te que a propriedade KeyPreview pode ser mexida em desenho

muito bom o que mandaste e realmente funcionou .. a questão é só funciona dentro do form ? eu não consegui captar o que foi feito fora do form

E o Impossível foi criado por pessoas fracas pra acabar com o sonho das pessoas fortes. Não deixes que acabem com o teu. Sonha , luta , ambiciona e realiza. Se amas , se gostas tu vais conseguir. Cala todas as pessoas que um dia duvidaram de ti e prova que foste mais forte de qualquer outro.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.