サイトアイコン わんすけに聞いてみる

vbsからアプリケーション操作

WinActorの拡張機能のつもりで作ってたUIAutomationですが、引数さえ揃ってればスクリプトでも実行できるんじゃねってことで、さっそくVBSめーかーに組み込んでみた。

 

1.「7-1.アプリケーション操作」として組み込んであるよ

 

2.クリックすると、メニューはこうなってます。

3.UIA_cmd.exeを同梱ZIPをダウンロード

このアクションが含まれる状態でZIPダウンロードするとUIA_cmd.exeとinspect.exeを同梱したZIPファイルが取得できます。

 

4.スクリプト実行でスムーズに動かすために変更したところ

WinActorからの起動の場合は、「GetUMSWindowHandle(@ウィンドウ識別名@)」を

使えばサクッとウィンドウハンドル取得できたんだけども純粋なvbsだとそうはいかないので、UIA_cmd.exe側でウィンドウハンドルを取得する様に処理を追加した。

具体的には、UIA_cmd.exeの2番目の引数に直接ウィンドウハンドルを指定すればそれでも動くし、2番目引数の先頭に「GetHWND:」を付けることでその後ろの文字列をプロセス名かウィンドウタイトルに含むアプリを対象としてウィンドウハンドルを取得し直す様にした。

VB.net側でのウィンドウハンドル取得処理がこちら。

    Private Function GetWindowHandle(part_key As String) As String
        Dim hwnd As String = part_key
        For Each p As Process In System.Diagnostics.Process.GetProcesses()
            If (p.ProcessName Like "*" & part_key & "*") Or
               (p.MainWindowTitle Like "*" & part_key & "*") Then
                hwnd = p.MainWindowHandle
                Exit For
            End If
        Next
        Return hwnd
    End Function

 

5.実際にサンプルフォームを操作する例

疲れた・・・寝る。今度、ここに動かし方を整理して書くつもり。

 

モバイルバージョンを終了