2011-10-20 30 views
3

私のwpfアプリケーションのサンプルコードは以下のとおりです。 フォームのテキストフィールドに文字列を入力する必要があります。wpfを使用したAutoIt

Run('AutoItWpfTesting.exe') 
    WinWaitActive("Window1", "") 

    $hHwnd = WinGetHandle("Window1") 
    MsgBox(0, "Message", $hHwnd) 

    $returnVal1=ControlGetHandle ("$hHwnd", "", "[NAME:txtVersion]") 

    $returnVal2=ControlSend($hHwnd,"","[NAME:txtVersion]","blahblah") 

    MsgBox(0, "Message", $returnVal2) 

それは$ returnVal2と$ returnValue1空の文字列の場合に0を返します。 しかし、これは私のサンプルwinformアプリケーションで正常に動作します。

この動作が何であるかの手掛かりと、wpfaアプリのデータを自動入力するための正確なテキストボックスを取得するための調整があります。

答えて

8

WPFアプリケーションでは、Windowsのコントロールとコントロールのハンドルは使用されません。 Spy ++を使って見ることができます。 WPF Alternatives for Spy++

WPFアプリケーションyou will need another toolを自動化するか、the UI Automation APIを使用してビルドします。

+0

私はより良いリソースを指すようにリンクを変更しました。 –

+0

これは正しいです。それとは別に、$ hWnd変数は、ControlGetHandle呼び出しの最初のパラメータでは引用符で囲まないでください。 –

関連する問題