2016-06-02 5 views
0

Ich habe versucht, ein Autoit-Objekt WinGetPos verwenden, um ein Popup in einem Thread in einem Vb-Projekt zu behandeln, möchte ich WinGetPos Funktion die X- und Y-Koordinaten des angegebenen Popup-und haben Ich habe den folgenden Code verwendet, nachdem ich zuerst die AutoItX3.PowerShell.dll-Referenz auf mein Projekt importiert habe. Ich bin nicht in der Lage, ein Array zu generieren. Könnte irgendjemand vorschlagen, wo ich vielleicht falsch liege?Wie WinPetGet-Objekt in Visual Basic zu deklarieren

Imports AutoIt 
Imports AutoItX3Lib 

Private Declare Auto Function WinGetPos Lib "AutoItX3.PowerShell.dll" (ByVal mywindowtitle As String) As Array 

Public Sub Main() 
    Dim PopUpThread As Thread = New Thread(AddressOf PopUpHandler) 

    With PopUpThread 'thread is looking for PopUp and press OK 
     .IsBackground = True 
     .Start() 
    End With 
End Sub 

Private Sub PopUpHandler() 
    Dim Ret As Integer 
    Dim myarray As Array 

    Do 
     Ret = FindWindow(vbNullString, "Choose File to Upload") 
     If Ret <> 0 Then 
      myarray = WinGetPos("Choose File to Upload") 
      MsgBox(UBound(myarray)) 
     End If 
    Loop 
End Sub 

Antwort

0

AutoItX ist ein bekanntes und dokumentiertes Programm. Warum also nicht einfach in die Hilfedatei schauen? Dort finden Sie, wie und WinGetPosX, WinGetPosY, WinGetPosHeight und WinGetPosWidth, aber keine WinGetPos zu verwenden. Das könnte der Grund für dein Problem sein.

+0

Vielen Dank für Ihre Antwort Ich habe die Hilfe-Datei ausgiebig konsultiert, ohne Erfolg :(Die WinGetPos-Funktion sollte ein Array bestehend aus WinGetPosX, WinGetPosY, WinGetPosHeight und WinGetPosWidth zurückgeben. Mein Problem ist jedoch, dass Code, den ich versuche, kann ich nicht bekommen vb.net Projekt innerhalb Visual Studio, um die Funktion zu erkennen und bekomme ein "Wingetpos ist nicht erklärten Fehler", kann jemand möglicherweise ein Beispiel für ein funktionierendes Stück Code mit dieser Funktion? vielen Dank –

+0

Vielleicht kann jemand übernehmen. m eine Fahrradtour für eine Woche – ReFran

+0

Sie haben die falsche Dokumentation gelesen WinGetPos ist eine Funktion, die Sie nur in AutoIt selbst verwenden können Sie arbeiten mit der aktiven X-Komponente von AutoIt namens AutoItX Sie können also nur mit der Funktion I arbeiten oben angegebenen. – ReFran