VBアプリケーションの画面要素が取得できない

初心者ですが質問させてください。

VB6やVB.Netで作成された自社内製のアプリケーションに対し、画面要素が一切取得できません。
「クリック」「画像をクリック」アクティビティ等の「画面上で指定」で選択しても参考スクリーンショットには何も表示されず、ターゲット情報のセレクターなどにも一切情報が反映されません。

何か対応策はあるのでしょうか。
もしご存じであれば教えていただけると幸いです。

※当方、Windows10 1809 64bit環境です。

1 Like

こんにちは

原因の切り分けのために、まずは以下あたりを確認してみてはと思います。

1.対象アプリケーションに対して、要素を取ろうとした場合、ボタンならボタンの範囲が適切に指定できていますでしょうか?それともウインドウ全体しか指定できないでしょうか?適切な場合は以下のように個々の要素がオレンジ枠で囲まれますが、権限の問題がある場合等はウインドウ全体が囲まれるようになります。

img20200903-1

2.ウインドウ付属のメモ帳などで同様のことを行うとどうなりますでしょうか?

3.当該アプリケーションは、ログインしているユーザーと同じ権限で動作していますでしょうか?
タスクマネージャーの詳細から、当該アプリケーションのプロセスがどのユーザーで動作しているか確認できると思います。

1 Like

回答いただきありがとうございます。
いただいたアドバイス(権限確認のくだり)をヒントに少し進展しました。

当該APは常に「管理者として実行」させる必要があり、そういったAPに対しては要素を正常に取得できなかったようです。
試しにStudio自体を「管理者として実行」してみたところ、参考スクリーンショットもターゲット情報も取得できました。
しかし、デバッグ実行してみると操作が行われずにそのままタイムアウトしてしまいます。

もう一つ試しに当該APを管理者でない通常ユーザーで実行させ、Studioも通常ユーザーで実行させたところ、命令通りに操作は行えました。
ただ運用上、当該APは「管理者として実行」させる必要があるため、この方法を取りたくはありません。

一応全パターンを試してみたので記載します(下記)。
・当該AP:管理者 Studio:通常 ⇒ ×(要素取得できない)
・当該AP:管理者 Studio:管理者 ⇒ ×(要素取得できるが、UiPathが動作しない)
・当該AP:通常 Studio:管理者 ⇒ ×(要素取得できるが、UiPathが動作しない)
・当該AP:通常 Studio:通常 ⇒ △(動作するが、運用上問題あり)

当該APを管理者として実行させた上で、ロボット動作可能とするための
何か良い方法がありましたらアドバイス願えないでしょうか。

1 Like

こんにちは

UiPathのワークフローを実行するのはUiPath.Executor.exeとなっており、開発を行うUiPath.Studio.exeとは別プロセスになっています。そのためUiPath.Studio.exeが管理者で実行していたとしても、UiPath.Executor.exeが通常ユーザーとなっていて結果アクセスできないとなっていると思われます。

このあたりは、タスクマネージャーの詳細タブで確認できますので、まずは一度確認いただければと思います。

1 Like

回答ありがとうございます。

試しにUiPathフォルダ(C:\Program Files (x86)\UiPath\Studio)にある以下すべてのExeに対し、プロパティの「互換性」タブにある「管理者としてこのプログラムを実行する」にチェックを入れたのち、ワークフローを実行してみました。
UiPath.ScaleCoordinates.exe
UiPath.Service.Host.exe
UiPath.Studio.CommandLine.exe
UiPath.Studio.exe
UiRobot.exe
UiPath.ActivityCompiler.CommandLine.exe
UiPath.Agent.exe
UiPath.DiagTool.exe
UiPath.Executor.exe
UiPath.Explorer.Launcher.exe
UiPath.LicenseTool.exe

すると「要求された操作には管理者特権が必要です。」と表示されて実行されません。
無題
※実際にワークフローで実行させようとしているのはボタンクリックのみです。

管理者特権でワークフロー実行するための方法をご存じないでしょうか。

1 Like

こんにちは

手元の環境で挙動を確認しましたが、サービスモードでインストールされたStudio(2019.10.5)に
対して管理者権限で起動→その後デバッグ起動をしたUiPath.Executor.exeはAdministratorで動作していました。

前述しましたが、まずはタスクマネージャー等で各プロセス(exe)がどのようなアカウントで動作しているかの確認を行った方が良いかと思います。

権限が問題ないのであれば、

・当該AP:管理者 Studio:管理者 ⇒ ×(要素取得できるが、UiPathが動作しない)

は別の問題である可能性があります。(一連の動作を紐解く必要があるかと思います。)

1 Like

本件、解決できました。
先程Studioを管理者として実行したら正常にデバッグできました。
※昨日と動きが違うのですが、原因不明・・・

回答頂き、ありがとうございました。

2 Likes