TestStackを使用して、アプリケーションで自動化プロセスを実行できることを知りたいです。そこで、ターゲット アプリケーションのすべてのウィンドウをカウントする簡単なコードを書きました。
まず、サンプル アプリケーション ( WinForm (.net) ) でテストしたところ、うまく機能しました(フォーム カウントとして 1 を返します)。
次に、ターゲット アプリケーションでテストしましたが、ウィンドウが返されません(フォーム カウントとして 0 を返します)。
ボタンの下の私のコード:
TestStack.White.Application application = TestStack.White.Application.Launch(@"C:\target.exe");
var windows = application.GetWindows();
foreach (var window in windows)
{
MessageBox.Show(window.Title);
}
...................................................
追加情報:
ボタンをクリックすると、ターゲット アプリケーションを正常に起動できます。
私は自分のアプリケーション プログラミング テクノロジを知りませんでした。C++ と QT だと思いますが、違うかもしれません。
application
変数を見ました。結果は次のとおりです。
質問:
- この問題を引き起こす原因は何ですか?
- この種のアプリケーションでプロセスを自動化するには、別の方法に切り替える必要がありますか (たとえば、低レベルの Windows API とメッセージを使用するか...)。
- 私は TestStack のビギナーです。間違いはありますか?
- あなたの提案は何ですか?
ありがとう...
編集1
- ターゲット アプリケーション ウィンドウの ClassName: "Qt5QWindowIcon" (これを取得するために SpyUI を使用しました)