私は現在C#でアクセス制御プログラムに取り組んでおり、ウィンドウをブロックする問題に遭遇しました。私が思いついた元のアイデアは、プロセスのIntPtrウィンドウハンドルによって指定された位置にプレーンな黒いフォームをレンダリングすることです。その中の問題は、フォームの位置と位置のz-indexをスムーズに更新することです(私はそれを一番上にしたくないので)。また、ループを使用して常に位置をチェックしていたため、ソリューションでのリソースの使用量が途方もなく多いことに気付きました。
したがって、なぜ私は尋ねます:主要なリソースを食べずにこれのための最良の解決策は何でしょうか?エントリポイントは、実行中のプロセスの名前にすぎません。
現在、このアイデアはブラウザをブロックするだけです(つまり、講義がアクティブなときに気が散るのを防ぐための学校のアプリケーション)。
詳しくは:
私は自分のアプリケーションでウィンドウを閉じるつもりはありません。他のプロセスからウィンドウを隠そうとしています。
私のアプリケーションはウイルス/迷惑なプログラムではありません。本質的には、学校の環境で気が散る可能性のあるアプリケーションの使用を防ぐことを目的としています。学校のコンピュータラボでの講義用に作られています。
現在、ブラウザのプロセス名でキャッチされたプロセスからメインウィンドウをプルしています。
コンピュータを完全に無効にすることもできません。