Ich würde gerne ein Banküberweisung automatisieren. Ich nutze dafür das Programm VR-Networld.
Ich habe 3 Monitore, davon einen mit 4k Auflösung auf dem das ganze gefunden werden soll.
Nun habe ich mit dem Script die Blume auf meinem Desktop gefunden.
Wenn ich aber VR-Networld einblende oder auch MS-Teams, dann findet Imagesearch die Bilder nicht.
Woran liegt das? Ich poste mal mein Script hier. Vielleicht kennt sich jemand damit aus.
AutoIt: CheckImage.au3
#Region ;**** Directives created by AutoIt3Wrapper_GUI ****
#AutoIt3Wrapper_Compile_Both=y ;ist notwendig
#AutoIt3Wrapper_UseX64=y ;ist notwendig
#EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
#include <ImageSearch.au3>
$gefunden=1
#AutoIt3Wrapper_Res_HiDpi=y; falls hochauflösende Bildschirme vorhanden sind
Global $fenster
Global $active = 0
global $y = 0, $x = 0 ;rückgabewerte für die Bildposition (sollten global sein!)
#include <Array.au3>
#include <Excel.au3>
#include <MsgBoxConstants.au3>
;$file = 'C:\Users\ich\Pictures\1.ter_des_Monats.bmp' ;passt hier den dateipfad bzw die Datei an bmp geht am besten
;$file = "C:\Users\O\Desktop\glgl\Personal\Lohnabrechnungen\Versand\Images Lexware MA\Browers.bmp"
;$file = "C:\Users\O\Desktop\glgl\Personal\Lohnabrechnungen\Versand\Images VR-Networld\StrehleVR.bmp"
$file = "C:\Users\O\Desktop\glgl\Personal\Lohnabrechnungen\Versand\Images VR-Networld\MS-Teams.bmp"
;$file = "C:\Users\O\Desktop\glgl\Personal\Lohnabrechnungen\Versand\Images VR-Networld\test.bmp"
;$file = "C:\Users\O\Desktop\glgl\Personal\Lohnabrechnungen\Versand\Images VR-Networld\Navigation.bmp"
;$file = "C:\Users\O\Desktop\glgl\Personal\Lohnabrechnungen\Versand\Images VR-Networld\testblume.bmp"
MsgBox(0,"", "zum Starten Enter drücken")
checkForImage()
Func checkForImage()
MsgBox(0,"Wir nehmen",$file)
Local $search = _ImageSearchArea($file,1,0,0, 3840, 2160, $x, $y, 0,0)
;Local $search = _ImageSearchArea($file,1,0,0, 1920, 1080, $x, $y, 0,0)
;Local $search = _ImageSearchArea($file,1,0,0, @desktopwidth ,@desktopHeight, $x, $y, 0,0)
;MsgBox(0,"Bildschirmgröße",@desktopwidth & " " & @desktopHeight)
;local $search = _ImageSearch($file, 1, $x, $y, 0) ; 900, 80, $x, $y, 0); Toleranz 0..255 hier 0
If $search = 1 Then
$gefunden = 1
MsgBox(0, "Bild gefunden auf:", "x: " & $x & " y: " & $y)
MouseClick($MOUSE_CLICK_LEFT, Round($x/1.75), Round($y/1.75),1) ; Mitarbeiter anklicken ; geteilt durch 1,75 weil Bildschirm 175%
;MouseClick($MOUSE_CLICK_LEFT, $x, $y,1) ; 1. des Monats doppelt anklicken"
;Local $hWnd = WinWait("e", "" , 1)
;MouseMove($x, $y, 10)
Else
MsgBox(0, "Bild nicht gefunden auf:", "nein")
$gefunden = 0
EndIf
;MsgBox(0,"Suchergebniss 1= gefunden 0= nicht gefunden",$search)
EndFunc
Alles anzeigen