Ich lerne über Tastatur-Hooks in VB.NET und brauche Hilfe mit einem Fehler. Zuerst sagte er mir, dass ich ändern muss (nicht (KeyDown) ist nichts) & KeyUp zu RaiseEvent, weil sie Ereignisse sind, die ich getan habe. Aber jetzt sagt es mir einen ')' Ausdruck wird erwartet, und ich habe keine Ahnung, was das bedeutet. Ich habe es bis jetzt mit VB.NET Wikis und Codeschnipsel gemacht und bin ziemlich stolz auf mich. Ich will nicht, dass das jetzt floppt. Bitte helfen Sie! Es gibt ein Bild des Fehlers ganz unten.VB.NET RaiseEvent nach Ausdruck fragen
Public Event KeyDown As KeyboardHookCallback
Public Event KeyUp As KeyboardHookCallback
Private Function HookFunc(ByVal nCode As Integer, ByVal wParam As IntPtr, ByVal lParam As IntPtr) As IntPtr
If (nCode >= 0) Then
Dim iwParam As Integer = wParam.ToInt32
If ((iwParam = WM_KEYDOWN) _
OrElse (iwParam = WM_SYSKEYDOWN)) Then
If (Not RaiseEvent KeyDown Is Nothing) Then
RaiseEvent KeyDown(CType(Marshal.ReadInt32(lParam), VKeys))
End If
End If
If ((iwParam = WM_KEYUP) _
OrElse (iwParam = WM_SYSKEYUP)) Then
If (Not RaiseEvent KeyUp Is Nothing) Then
RaiseEvent KeyUp(CType(Marshal.ReadInt32(lParam), VKeys))
End If
End If
End If
Return CallNextHookEx(hookID, nCode, wParam, lParam)
End Function
1) Ein Ausdruck ist etwas, das einen Wert hat, zum Beispiel 5, oder 'x + y'. 2) Ich * vermute *, dass Sie versuchen herauszufinden, ob ein Event-Handler mit dem KeyUp-Ereignis verbunden ist. Ich schlage vor, dass Sie Ihren Code arbeiten, bevor Sie zusätzliche Funktionen wie diese hinzufügen. –
Es sieht wie ein Versuch aus, C# -Code zu übersetzen. Löschen Sie die If-Anweisung, sie ist weder richtig noch notwendig. Einfach nur RaiseEvent erledigt den Job. –
Die Microsoft-Dokumentation [Visual Basic Coding Conventions] (https://docs.microsoft.com/en-us/dotnet/visual-basic/programming-guide/program-structure/coding-conventions) besagt ausdrücklich: "Überprüfe nicht, ob Ein Ereignis ist Nothing (null), bevor Sie die RaiseEvent-Methode aufrufen. RaiseEvent prüft auf Nothing, bevor das Ereignis ausgelöst wird. " –