問題タブ [window-handles]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - JNA - OSX ですべての可視ウィンドウ ハンドルを取得する
Java と JNA を使用して、OSX で可視ウィンドウを取得 (z オーダー)、移動、およびサイズ変更する方法を探しています。プロジェクトの目標は、サードパーティのウィンドウを管理することです。そのため、私はウィンドウを所有しておらず、単純な Java コードを介してアクセスすることはできません。これは、user32.dll を使用した簡単なタスクである windows7/8 で既に実行しています。私はすでにグーグルで何時間も無駄にしましたが、最新のOSXでこれを達成する方法についてのドキュメントや何かを見つけることができません. だから私の質問は - FindWindow、EnumWindows、SetWindowPos などのようなものを持つ User32.dll に相当する OSX は何ですか?
または、このようなことを達成する方法に関するその他のアドバイス。
c++ - Windows はスレッドのシャットダウン時にイベントを作成します
コードの単体テスト フレームワークにハンドル リーク検出を追加しようとしています。(Windows 7、x64 VS2010)
私は基本的に、各単体テストの前後に GetProcessHandleCount() を呼び出します。これは、スレッドがテストの一部として作成/破棄される場合を除き、正常に機能します。
Windows は、スレッドのシャットダウン時に 1 ~ 3 のイベントを作成しているようです。同じテストをループで実行しても、イベントの作成数は増加しません。(たとえば、テストをループで 5000 回実行すると、1 ~ 3 個の余分なイベントが作成されるだけです)
自分のコードでイベントを手動で作成することはありません。
これは次の問題に似ているようです: boost::thread の原因となる小さなイベント ハンドル リーク? しかし、手動でスレッドの作成/シャットダウンを行っています。
私はこのコードに従いました: http://blogs.technet.com/b/yongrhee/archive/2011/12/19/how-to-troubleshoot-a-handle-leak.aspx
そして、WinDbg からこのコールスタックを取得しました:
ご覧のとおり、これはスレッドのシャットダウンで作成されたイベントです。
単体テストでこのハンドルリーク検出を行うより良い方法はありますか? 私の現在の唯一のオプションは次のとおりです。
- このハンドル リーク検出を行うのを忘れる
- これらの偽のイベントを作成するために、いくつかのダミー タスクを起動します。
- わずかな漏れの許容値を許容し、各テストを数百回実行します (したがって、実際の漏れは多数になります)。
- イベントを除いたハンドル数を取得する (難しいコード量)
私もVS2013でstd::threadを使用するように切り替えてみましたが、使用すると多くのバックグラウンドスレッドとハンドルが作成されるようです。(カウントの差をさらに悪化させます)
これは自己完結型の例で、(私のコンピューター上で) 99% 以上の確率でイベントが舞台裏で作成されます。(ハンドル数は異なります)。起動/シャットダウン コードをループに入れると、直接リークしないことを示しますが、時折のイベントが蓄積されます。
integration-testing - lastordefault に焦点を当てますが、新しいウィンドウを開く呼び出しを処理します
C# で単体テストを書いていますが、最後に開いたページを新しいウィンドウでフォーカスしたいと考えています。しかし、これを使用すると:
Windows ハンドルは、もう 1 つのウィンドウを開きます。そのオープニングは必要ありませんか、URLなどでウィンドウに集中できますか?
c# - c#でタスクバーに固定されたアプリケーションを起動するときにウィンドウハンドルを取得するには?
次のコードを使用して、プログラムを介してコンピューターのディスプレイをオフにするアプリケーションを作成しています。
ウィンドウハンドルを取得するには、次のコードを使用しています
注: 私が作成しているこのアプリケーションには UI がありません。
Visual Studio 2008 Professional でデバッグすると、すべて正常に動作します。しかし、exeをタスクバーにピン留めしてクリックすると、返されたウィンドウハンドルが0になるため、ディスプレイをオフにできません。では、タスクバーからアプリケーションを起動するときにウィンドウハンドルを取得するにはどうすればよいでしょうか?
サンプルのメイン プログラムは次のようになります。
visual-studio-2012 - コード化された UI テスト - テスト中に実行中のアプリケーションが終了するのを待っています
Visual Studio Ultimate 2012 でコード化された ui テストを使用して my-app のテストを作成しようとしています。my -app で別のアプリを実行します (「別のアプリ」の実行中に cmd ウィンドウが開きます)。この「別のアプリ」の実行が完了するまで待ってから、結果を確認したいと思います。どうやってやるの?
誰かがコード化されたUIテストを使用してウィンドウを制御する方法を知っていれば、それが役立つと思いますが、今までその例は見つかりませんでした!
multithreading - アプリケーションでハンドルを処理するには?
アプリケーション IpScanner(マルチスレッド) のハンドルを制御することに疑問があります。コードを実行すると、ハンドルが毎回増加します。例: IP 範囲を 192.168.0.1 から 192.168.0.10 に設定し、コードを 10 スレッドで実行すると、最初に 40 のハンドルがある場合のように、最初に 56 という値に到達するように、初めて増加します。再度 10 スレッドで実行すると、56 から特定の値に増加し、アプリケーションを終了するまで 67 と表示されます。乗り越える方法 誰か助けてくれませんか?
unithostname.dfm
より多くのスレッドに対してコードを実行すると、毎回より多くのハンドルが生成されます。これらを取り除く方法は? 誰でも私を助けることができますか?ありがとうございました
selenium-webdriver - セレンWebドライバーで切り替えずにウィンドウのタイトルを取得
セレンで切り替えを行わずにウィンドウのタイトルを取得する方法はありますか?
現在、私は以下のコードを使用しています: