2016-12-21 19 views
2

私は、Autoitのモバイルゲームの面倒な部分を自動化するためのスクリプトを作成しています。場合によっては、エラーや悪いWiFi信号によってゲームが切断され、スクリプトが正常に機能しなくなり、正しく動作しなくなることがあります。何をしようとしているのは、接続が切断されてから最初から再起動する場合に、テストを続けるテストを作成することです。プログラムの実行中に連続して実行するテスト

Func _TestConnection() 
    $Continue = True 
    $DisconnectTest = PixelSearch(3146,760,3262,791,0x125C12,10) ;search for popup 
    If not (@error) Then 
     _LC (3112,779) ;click Yes to reconnect 
     Sleep(10000) 
     Return $Continue = False 
    EndIf 
EndFunc 

この関数は、ポップアップが見つかるとFalseを返します。しかし、いつでも切断することができるので、プログラム全体でこれを実行する方法が必要です。

これを1行に減らすだけでも、スクリプトの各ステップにプラグインすることができます。例えば

If _TestConnection() = False Then ExitLoop

しかし、それが出たところに、この文句を言わないの復帰。ループを終了して残りのプログラムを続行するだけです。

別の有用なコマンドはIf _TestConnection() = False Then Break

だろう。しかし、これは完全に働いてからプログラムを停止します。

答えて

0

自動化スクリプトを最初から再起動すると言うと、最も簡単な方法は2つのプロセスを実行することです。最初のスクリプトは自動化スクリプトを起動し、それが完了するのを待たずに接続テストのループを実行します。接続に失敗したら、2番目のプロセスを終了し、再接続して、オートメーションスクリプトを再起動します。

関連する問題