1. Dashboard
  2. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team
    4. Mitgliedersuche
  3. Forenregeln
  4. Forum
    1. Unerledigte Themen
  • Anmelden
  • Registrieren
  • Suche
Alles
  • Alles
  • Artikel
  • Seiten
  • Forum
  • Erweiterte Suche
  1. AutoIt.de - Das deutschsprachige Forum.
  2. Mitglieder
  3. level20peon

Beiträge von level20peon

  • ff.au3 klick auf link mit "onclick" attribut

    • level20peon
    • 27. Oktober 2013 um 12:52

    Hallo zusammen,

    ich versuche mittels ff.au3 / ffex.au3 auf https://autoit.de/www.dealdash.com die Seiten umzublättern - bislang erfolglos.

    Versucht habe ich Folgendes:

    Code
    ;#Include <FF.au3>
    #Include <FFEx.au3>
    
    
    _FFConnect('127.0.0.1',4242,5000)
    
    
    _FF_Call("goToPage(0)")
    _FFCmd("goToPage(0)")
    _FFClick(_FFXpath('//li[@class="next"]/a'))
    _FFClick("next", "class")
    _FFClick("pageindex_5", "id")
    Alles anzeigen

    Könnte mir hier jemand weiterhelfen ?

  • Lautstärke einer bestimmten Soundkarte unter Vista steuern

    • level20peon
    • 25. Juli 2009 um 16:15

    Es geht von Hand (siehe Anhang). Ich möchte aber gerade nicht per Autoit die Audio-Einstellungen öffnen und dort zB per Maus-Emulation den Schieberegler betätigen, sondern einfach sowas wie Sound('device0', 'volume80') aufrufen. Ist das was mit dem von dir erwähnten WMI realisierbar ?

  • Lautstärke einer bestimmten Soundkarte unter Vista steuern

    • level20peon
    • 25. Juli 2009 um 12:31

    Hallo zusammen,

    ich würde gerne die Lautstärke einer (!) meiner Soundkarten ändern. Kann ich dies mit AutoIt selektiv durchführen, oder kann man immer nur die Gesamtlautstärke aller Soundkarten parallel steuern ? Betriebssystem ist Vista x64.

  • Fenster unter dem Mauscursor ermitteln

    • level20peon
    • 22. Mai 2009 um 10:53

    Habe ein Ticket im bugtracker erstellt.

  • Fenster unter dem Mauscursor ermitteln

    • level20peon
    • 21. Mai 2009 um 16:58

    Vielen Dank für deine Mühe BugFix. Das Kopfzerbrechen der letzten Tage fand eben ein vorläufiges Ende.

    Der "Bug" liegt nicht in den scripts, sondern an der Tatsache, dass die WindowFromPoint API Funktion die tagPoint Struktur in einem x64 OS anders als in einem x86 OS behandelt. Mit den bei einem x64 System ausgegebenen DLL calls kann das script nichts oder nur teilweise etwas anfangen. Wenn ich das script im (x86) Modus ausführe funktioniert mein eingangs erwähntes Beispiel einwandfrei.

    Vielleicht könnte sich ein dev dies mal anschauen ?

  • Fenster unter dem Mauscursor ermitteln

    • level20peon
    • 21. Mai 2009 um 16:20

    Danke für die Antwort. Leider gibt dein Beispiel nur das Fenster im Vordergrund aus.

    Ich habe gerade herausgefunden wo der Fehler steckt, leider konnte ich ihn nicht lösen.

    Die von mir oben genannten Beispiele geben jeweils das Fenster zurück, welches auf der X-Koordinate des Mauscursors liegen, jedoch wird die Y-Koordinate immer als 0 zurückgegeben. Wenn ich die Funktionen _WinAPI_GetMousePosX bzw _WinAPI_GetMousePosY aus der WinAPI.au3 einzeln benutze werden jedoch beide Koordinaten korrekt angezeigt. Jetzt müsste ich nur noch rausfinden, wie ich die beiden Koordinaten an _WinAPI_WindowFromPoint weiterreichen kann, da die Funktion ja nur die eine Variable $tPoint annimmt.

    EDIT: Habe die einzelnen Variablen (also X- und Y-Koordinate) in eine Tagpoint Struktur gepackt und an _WinAPI_WindowFromPoint weitergeleitet. Hier tritt das selbe Problem aber wieder auf, es wird nur die X-Koordinate berücksichtigt, die Y-Koordinate wird weiterhin als 0 angenommen.

  • Fenster unter dem Mauscursor ermitteln

    • level20peon
    • 21. Mai 2009 um 15:11

    Hallo,

    ich würde gerne das Fenster-handle / den Fenstertitel des Fensters unter der Maus herausfinden. Wenn mehrere Fenster übereinander liegen sollte es das oberste Fenster sein. Die Ausgabe muss auch mit Fenstern, die inaktiv sind funktionieren.

    Folgender Ansatz liefert oft, aber bei weitem nicht immer das handle zurück:

    Code
    HotKeySet("{ESC}", "_Quit")
    Global $Struct = DllStructCreate("int x;int y")
    
    
    While 1
        Sleep(100)
        ToolTip("")
        Pos()
        $hwnd = WindowFromPoint()
        ToolTip($hwnd)
    WEnd
    
    
    Func Pos()
        DllStructSetData($Struct, "x", MouseGetPos(0))
        DllStructSetData($Struct, "y", MouseGetPos(1))
    EndFunc ;==>Pos
    
    
    Func WindowFromPoint()
        Local $x = DllStructGetData($Struct, "X")
        Local $y = DllStructGetData($Struct, "Y")
        Local $aResult = DllCall("User32.dll", "hwnd", "WindowFromPoint", "int", $x, "int", $y)
        Return $aResult[0]
    EndFunc ;==>WindowFromPoint
    
    
    Func _Quit()
        Exit
    EndFunc ;==>_Quit
    Alles anzeigen

    Wenn mehrere Fenster übereinander liegen zeit das script gerne mal falsche infos an, ausserdem funktioniert es mehr schlecht als recht, wenn mehrere Fenster derselben Klasse existieren.

    Wie würdet ihr das Ganze lösen ?


    EDIT: Das hier zeigt das selbe Verhalten:

    Code
    #include <WinAPI.au3>
    
    
    While 1
    	Sleep(100)
    	test()
    WEnd
    
    
    Func test()
    	ToolTip("")
    	$pos = _WinAPI_GetMousePos()
    	$hwnd = _WinAPI_WindowFromPoint($pos)
    	ToolTip($hwnd)
    EndFunc
    Alles anzeigen

Spenden

Jeder Euro hilft uns, Euch zu helfen.

Download

AutoIt Tutorial
AutoIt Buch
Onlinehilfe
AutoIt Entwickler
  1. Datenschutzerklärung
  2. Impressum
  3. Shoutbox-Archiv
Community-Software: WoltLab Suite™