ログイン画面 2番目の入力で例外

お世話になります。

IEでログイン画面を開き、IDとパスワードを入力してから「ログイン」ボタンを押す、という単純な操作を行いたいのですが、原因不明のエラーが起きており悩んでいます。
IDは入力できるのですが、パスワード入力のアクティビティで「Value does not fall within the expected range.」という例外によって落ちてしまいます。
以下に詳細を記述します。

・ID入力とパスワード入力の間にDelayを入れても解決しない。
・ID入力の前にDelayを入れると、ID入力時に上記の例外が発生する。
・ID入力とパスワード入力の順番を入れ替えると、パスワードは入力できるがID入力で上記の例外が発生する。
・項目選択時、「Indicade on Screen」による選択ではSelectorNotFoundになるので、UiPath Explorerを使用して対応した。

IDのセレクタ:<html title=‘XXXX Login’ /> <webctrl id=‘IDToken1’ tag=‘INPUT’ />
パスワードのセレクタ:<html title=‘XXXX Login’ /> <webctrl id=‘IDToken2’ tag=‘INPUT’ />

download has thrown an exception

Source: Password

Message: Value does not fall within the expected range.

Exception Type: ArgumentException

System.ArgumentException: Value does not fall within the expected range.
at UiPath.Core.Activities.ScopeActivity.OnFaulted(NativeActivityFaultContext faultContext, Exception propagatedException, ActivityInstance propagatedFrom)
at System.Activities.Runtime.FaultCallbackWrapper.Invoke(NativeActivityFaultContext faultContext, Exception propagatedException, ActivityInstance propagatedFrom)
at System.Activities.Runtime.FaultCallbackWrapper.FaultWorkItem.Execute(ActivityExecutor executor, BookmarkManager bookmarkManager)

検索すると同じ例外の問題が多く見つかりますが、決定的な解決策が存在しないらしく、ほとんどが未解決のままです。どなたか解決方法をご存知の方がおられましたら、よろしくお願い致します。

解決したので自己レスします。

レコーディング機能を使い、ログイン操作を記録してから実行すると問題なく動くため、何が違うのか比較したところ、問題の処理の方は「Open browser」アクティビティでログイン画面にアクセスした後「Open browser」の内部でブラウザ操作を行っていました。

そこで「Open browser」はブラウザを開く処理にだけ使い、後の操作を外に出したところ、問題なく動くようになりました。

UiPathのバグなのか、「Open browser」の使い方が誤っていたのか判りませんが、ひとまず解決しましたので、ご参考まで。

3 Likes