Mausklick visual studio vb 2005

Samy-Deluxe

Erfahrenes Mitglied
Hallo, ich hab mir bei Google ein script gefunden um Maus Klicken zu lassen, jedoch kommt ein Fehler bei Visual Studio 2005

Ein Aufruf an die PInvoke-Funktion "mausbeweger!mausbeweger.Form1::mouse_event" hat das Gleichgewicht des Stapels gestört. Wahrscheinlich stimmt die verwaltete PInvoke-Signatur nicht mit der nicht verwalteten Zielsignatur überein. Überprüfen Sie, ob die Aufrufkonvention und die Parameter der PInvoke-Signatur mit der nicht verwalteten Zielsignatur übereinstimmen.

Ich habe andere API Scripte versucht, die geben fast den selben Fehler aus.

hier ist mein Code
Code:
Private Declare Sub mouse_event Lib "user32" _
      (ByVal dwFlags As Long, ByVal dx As Long, _
      ByVal dy As Long, ByVal cButtons As Long, _
      ByVal dwExtraInfo As Long)

    Private Const MOUSEEVENTF_ABSOLUTE = &H8000
    Private Const MOUSEEVENTF_LEFTDOWN = &H2
    Private Const MOUSEEVENTF_LEFTUP = &H4
    Private Const MOUSEEVENTF_MIDDLEDOWN = &H20
    Private Const MOUSEEVENTF_MIDDLEUP = &H40
    Private Const MOUSEEVENTF_MOVE = &H1
    Private Const MOUSEEVENTF_RIGHTDOWN = &H8
    Private Const MOUSEEVENTF_RIGHTUP = &H10
    Public Sub Mausklick(Optional ByVal Button As _
  MouseButtons = Windows.Forms.MouseButtons.Left)
        'Mausklick simulieren
        Select Case Button
            'linke Maustaste
            Case Windows.Forms.MouseButtons.Left
                mouse_event(MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0)
                mouse_event(MOUSEEVENTF_LEFTUP, 0, 0, 0, 0)

                'mittlere Maustaste
            Case Windows.Forms.MouseButtons.Middle
                mouse_event(MOUSEEVENTF_MIDDLEDOWN, 0, 0, 0, 0)
                mouse_event(MOUSEEVENTF_MIDDLEUP, 0, 0, 0, 0)

                'rechte Maustaste
            Case Windows.Forms.MouseButtons.Right
                mouse_event(MOUSEEVENTF_RIGHTDOWN, 0, 0, 0, 0)
                mouse_event(MOUSEEVENTF_RIGHTUP, 0, 0, 0, 0)
        End Select
    End Sub
'TIMER mit abruf des Mausklicks
Private Sub Timer_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer.Tick
Mausklick(Windows.Forms.MouseButtons.Left)
End Sub

Was mache ich falsch oder was muss ich machen damit es geht?
 
Hallo Samy,

die API Deklaration ist auf jeden Fall schon mal falsch.
Was in VB Classic Long war ist in .NET Integer.

Code:
Private Declare Sub mouse_event Lib "user32" _
      (ByVal dwFlags As Integer, ByVal dx As Integer, _
      ByVal dy As Integer, ByVal cButtons As Integer, _
      ByVal dwExtraInfo As Integer)

Gruß
Jens
 
Ja Okay, etwas wird bei mir noch grün unterstrichen

Code:
Private Const MOUSEEVENTF_ABSOLUTE = &H8000
    Private Const MOUSEEVENTF_LEFTDOWN = &H2
    Private Const MOUSEEVENTF_LEFTUP = &H4
    Private Const MOUSEEVENTF_MIDDLEDOWN = &H20
    Private Const MOUSEEVENTF_MIDDLEUP = &H40
    Private Const MOUSEEVENTF_MOVE = &H1
    Private Const MOUSEEVENTF_RIGHTDOWN = &H8
    Private Const MOUSEEVENTF_RIGHTUP = &H10

Fehler, sowas wie Deklaration durch As fehlt
 
Zurück