大きな銃を破壊しましょう。
Application Compatibility Toolkitをダウンロードしてインストールします。これには、Compatibility Administratorと呼ばれるプログラムが含まれています。このプログラムには、32ビット版と64ビット版の2つのバージョンがあります。強打したいアプリケーションと同じビット数で実行します。
背景:多くのアプリケーションは、特定の機能をサポートしているが、実装を台無しにしていると主張しています。マイクロソフトは常にこれに対処しており、一般的な問題の修正を再利用するための互換性インフラストラクチャを作成しています。これらの修正はシムとして実装され、Windows APIへの呼び出しをインターセプトします。アプリケーションのDPI認識の宣言を効果的にキャンセルするシムを使用します。他のシムは、より洗練された/構成可能なことを行いますが(参考文献を参照CorrectFilePaths
)、一部のシムはその環境についてアプリケーションにただ嘘をつきます(などForceAdminAccess
)。
Compatibility Administratorの左ペインの下部で、カスタムデータベースに新しいエントリが表示されます。それを右クリックして、新規作成 → 互換モードを選択します。それに何か名前を付けます(私は使用しましたDpiMisbehavior
)。左側のリストでDPIUnaware
、>
ボタンを見つけてクリックし、有効にします。完了したら[OK]をクリックします。
カスタムデータベースをもう一度右クリックし、[ 新規作成 ] →[ アプリケーション修正 ]を選択します。プログラム名とベンダーを記入し(これらはあまり重要ではありません)、アプリケーションのメインEXEを選択します。(これは、Compatibility Administratorのビットネスが重要な場所です。)完了したら、[次へ]を押します。
[ 追加の互換モード]で、下にスクロールして、先ほど作成した互換モードを見つけます。そのチェックボックスをオンにします。必要に応じてテストを実行し、[次へ]をクリックします。
厳密に言えば、ここで特定の修正を適用できるため、互換モードを作成する必要はありません。後でそのモードに追加の修正を追加する必要がある場合に備えて、そのモードで配置したすべてのアプリに適用されるようにしました。そのため、互換性修正手順で何もせずに[次へ]をクリックするだけです。
一致情報は、プログラム(EXE)が表すアプリを識別するために使用されます。(修正プログラムを必要としないプログラムに修正プログラムを適用した場合、かなり残念です。)プログラムが修正プログラムを取得するには、すべてのチェック済みエントリが一致する必要があります。Compatibility Administratorは、以前に指定したEXEからこれらの基準値を引き出しました。デフォルトは問題ありませんが、そのようなことを強く感じている場合は変更できます。満足したら[完了]をクリックします。
必要なすべてのプログラムに対して、アプリケーション修正の作成を繰り返します。次に、ツールバーの[保存]を押します。好きな名前を付けてください。使用しましたDPI Repair
。次に、必要なファイルシステムのどこにでも保存します。将来変更する必要がある場合は、[開く]ツールバー項目を使用して、そのファイルを選択できます。
最後に、新しく名前を付けたカスタムデータベースを右クリックし、[ インストール]を選択します。
そうそう。
将来、互換性データベースを変更する必要がある場合は、それを開いて適切な変更を加え、[保存]をクリックしてから再インストールを実行してください。それは古いバージョンの上でちょうど行きます。実際、このデータベースを別のコンピューターにコピーし、Compatibility Administratorを使用して、データベースを再作成せずにインストールできます。
オプションのエンターテイメント:[ システムデータベース]の下の[ アプリケーション]エントリを展開して、このインフラストラクチャでMicrosoftが修正しなければならなかったプログラムのリストを表示します。プログラムのエントリをクリックすると、適用された修正モードと互換モードが表示されます。[ 互換性の修正]で、コンピューターで使用できる修正の完全なリストを確認できます。