Hallo alle zusammen,
ich komme mal gleich zu Punkt, ich bastle hier ein Skript um meinen zweiten Monitor via Eigenschaften von Anzeige zu aktivieren.
Das Skript funktioniert zwar aber es dauert mir zu lange bis überhaupt Aktivität von seitens Autoit stattfindet.
Ich habe das Skript auch compiliert, nur um fragen zu vermeiden, aber egal ob kompiliert oder direkt via autoit es dauert immer lang.
PS: Ich bin mir bei der Positionsdatenberechnung für den Mauszeiger nicht sicher ob man das in Autoit so macht, ich kenne es nur aus anderen
Programmiersprachen so, berechnet werden zwar die richtigen Werte aber ist das evtl der Punkt bei dem er so lange hängt?
Ich denke ein AutoIt Spezialist wird den fehler sofort sehen? Oder?
Danke an dieser Stelle schonmal für die Hilfe, und ja ich weis die kommentare im code sinn warscheinlich scheiße aber ich blick durch,
wenn jemand Hilfe zum Kommentar oder code braucht - einfach posten, dachte mir aber bei der länge des codes lohnen sich weitere Kommentare nicht.
Hier das Skript:
#include <Process.au3>
$rc = _RunDos("control.exe desk.cpl,,3")
If WinActive("Eigenschaften von Anzeige") Then
;WinActivate("Eigenschaften von Anzeige", "")
Send("{TAB}")
Send("{DOWN}")
Send("{TAB}")
Send("{TAB}")
Send("{TAB}")
Send("{TAB}")
Send("{SPACE}") ;bis hier "Windows auf diesem Monitor erweitern"
;ab hier monitor 2 links neben monitor 1 ziehen und dann OK drücken
$pos = WinGetPos("Eigenschaften von Anzeige")
Dim $moni2x, $moni2y
$srcx = $pos[0] + 250 ;xpos + 250 = src pos Moni2
$srcy = $pos[1] + 150 ;ypos + 150 = src pos Moni2
$trgx = $pos[0] + 50 ;50 = wert von targetpos mousex ab kante fenster
MouseClickDrag("left", $srcx, $srcy, $trgx, $srcy); Left click drag from src zu target (targety = srcy da nur verschiebung auf x-achse stattfindet
Send("{ENTER}")
EndIf