私は現在、別のアプリケーションをテストするのに役立つアプリケーションを作成しています(どちらもVB.NETで作成されています)。私のテスターアプリは私の他のアプリケーションのフォームに情報を入力できるようにしたい。私は両方のアプリケーションに慣れ親しんでいるので、私は自分のテストアプリで何かしたいと思うフォームについての名前とすべてを知っています。私の問題は、テストステイ・フォームのこの情報を使って、実際にテスター・アプリケーション用のコードでそのフォームを参照できるハンドルまたは何かを得る方法が必要なことです。特定のフォームを見つけて参照するには? (VB.NET)
このフォームを取得するにはどうすればよいですか?似たようで、私の唯一の経験は、プロセスのメインウィンドウのハンドルを得ていたが、それはこれを行うことによって、少し簡単だった。しかし、でもそれは反復処理する必要があるため、私はと本当に満足していないことを
Dim iTunesID as intptr
for each process as process in process.getprocesses
if proc.mainwindowtitle = "iTunes" then iTunesID = proc.MainwindowHandle
next
すべてのプロセス。それからも、このケースではメインウィンドウではないので、私は自分の特定のウィンドウをどのように参照するのか本当に分かりません。私はこれを行う方法を探そうとしましたが、私の検索はあまりにも漠然としています。私は、これを行うためにどのような方法が利用できるのか、それを助けるために利用できるのか分かりません。
私の最初の考えは、「form.formsrunning」という種類のforms.formのような形式のものがありますが、「フォームを実行するコマンドを知りません。私はおそらく1つを見つけることができると思いますが、私はすべてのプロセス/フォームを反復するよりも優れたソリューションを望んでいます。
事前にお問い合わせいただきありがとうございます。 :)
...これは助けと関心であった願っています。ただしないでください。 –
アプリケーション外のフォームへの参照を得るのは難しいですか?テストアプリケーションを変更したくないので、私は同じアプリケーションでそれらを使用したくありません(他のいくつかの質問に回答しているので、テストしようとしているプログラムがかなり敏感です)。 ..) – user1167662
@HansPassant ^これを忘れてしまった – user1167662