2016-04-05 18 views
0

Ich habe ein Sikuli-Skript in Java geschrieben, um auf die Windows-Startschaltfläche zu klicken und dann auf "Alle Programme" zu klicken. Das Skript funktioniert auf meinem Computer einwandfrei, aber wenn ich dasselbe Skript auf einen anderen Computer übertrage, funktioniert es nicht.Ausführen eines Sikuli-Skripts in mehreren Computern

Code:

Screen screen = new Screen(); 
screen.type(Key.WIN); 
screen.click(IMAGE_DIR + "program.PNG"); 

Ich benutzte Begriffe wie Wait, Pattern und ähnliche, aber nicht in der Lage, dieses Problem zu lösen. Nicht sicher, ob dies eine Einschränkung der Sikuli ist.

+0

Wie führen Sie Ihr Skript aus? Ist es in beiden Fällen gleich? Haben Sie Fehler? Wo genau schlägt dein Code fehl? –

+0

Meiner Erfahrung nach wird Sikuli wahrscheinlich versagen, wenn versucht wird, Bilder auf dem zweiten Computer zu finden, es sei denn, die beiden Computer haben genau das gleiche Setup für ihre Monitore (Größe, Auflösung usw.). Wenn das gleiche durch Tastenanschläge oder Tastaturkürzel erreicht werden kann, haben Sie mehr Glück, imo. – autoKarma

+0

@Eugene: Wie von AutoKarma erwähnt, ist es nicht in der Lage, das Bild im zweiten Computer zu finden, aber Bildschirmauflösung usw. sind die gleichen, außer die zweite Maschine ist ein Laptop –

Antwort

0

Wie bereits in den Kommentaren erwähnt, werden Unterschiede in den Bildschirmauflösungen Ihre bestehenden Skripte definitiv ruinieren, da Sikuli sehr empfindlich auf sie reagiert. In diesem Fall besteht die einzige Lösung darin, die Muster erneut zu erfassen und auf jeder Maschine eine andere Gruppe von Mustern zu verwenden.

Allerdings, wenn Sie solche Probleme haben, aber Bildschirmauflösungen scheinen identisch zu sein, gibt es ein paar Dinge, die überprüft werden sollten.

Klare Art, die Microsofts Implementierung von Subpixel-Rendering ist, die das Aussehen der Schriftarten verbessern soll. Wenn Sie diese Funktion auf einem Computer einschalten und auf einem anderen ausschalten, könnte das ein Problem darstellen.

Glatte Ränder der Bildschirmschriftarten Einstellung, die im "Visuelle Effekte" Einstellungsfenster in "Leistungsoptionen" gefunden werden kann. Es macht genau das, was es sagt, glättet Windows-Fonts, um das Aussehen zu verbessern. Wie im Fall von ClearType sollte diese Funktion auf beiden Computern, auf denen Sie Ihre Skripts ausführen, aus- oder eingeschaltet sein. Die allgemeine Empfehlung, das immer abschalten zu müssen, um diese Art von Problemen zu vermeiden.

+0

Danke @Eugene für Ihre Antwort. –