Windows で新しいウィンドウを開くことを禁止できますか? 別のウィンドウが一瞬でもフォーカスを奪わないようにしたいだけです。
それは可能ですか?はいの場合、どのように?
// not sure if I can correct 1 letter mistakes on Stackoverfl0w
いいえ、そのようなことはありません (「セキュリティで保護されたデスクトップ」シナリオのモジュロ)、それも良いことです。なんで?あってはならないからです。そのようなプログラムは、コーディングされていれば、タスクバーをクリックすることすらできません...
そのような機能が利用可能だったと想像してみてください。ここで、2 つのアプリケーションが両方とも非常に重要であり、常にフォーカスを持っている必要があると考えているとします。二人とも、「私はとても重要だ。誰にも私の集中力を奪わせないで」と言うでしょう。そして… 何?
これは設計が悪いだけです。プログラムを賢明に設計し、それが非常に重要であり、驚くべきものであるためにユーザーが他のプログラムに切り替えたくないという可能性は非常に低いことを認識してください。
そして、1 つの単純な事実を覚えておいてください。私のコンピューターはあなたではなく私のものであり、新しいウィンドウを開きたい場合、できないと私に言うあなたは誰ですか?
WA_INACTIVE を受け取ったら、ウィンドウをフォアグラウンドに戻して、WM_ACTIVATE を試すことができます。WM_KILLFOCUS やその他の関数で同じトリックを試すことができるかもしれません。Spy++ を使用して、ウィンドウのフォーカスを失う原因となっているメッセージを調査できます。
そのような「機能」は、組み込みシステムのキオスク モード アプリや、ある種のセキュリティ指向のアプリケーションで使用できると想像できます。あなたのアプリが実際に何をしようとしているのか、もっと知ることができるでしょうか?