🪟

Visual Studio 2022のC++開発機能インストール時、Cドライブ直下にDLLが生成されてしまう問題の対応

2024/11/17に公開

Visual Studio 2022の「C++によるデスクトップ開発」機能インストール時、Cドライブ直下にappverifUI.dllvfcompat.dllという二つのdllが生成されてしまう問題が確認されています。これは、Windows 11 SDKに含まれるアプリケーション検証ツールのDLLなのですが、インストーラーの不具合で本来想定されていない場所にDLLが展開されてしまっているのが原因のようです。
パス等は正常に通っているので動作上は問題ないのですが、Cドライブ直下に意図せぬDLLが配置されているのはあまり嬉しい状態ではありません。

https://stackoverflow.com/questions/75270760/can-i-move-or-delete-appverifui-dll-and-vfcompat-dll-from-root-after-visual-stu
Stack Overflowではレジストリの値を書き換える対処法が投稿されていますが、SDKのバージョン変更やアンインストール時に変な影響が出るのも面倒なので、問題が発生していないWindows 11 SDKのバージョンにロールバックすることで問題の解消を試みました。

実行環境

  • Windows 11 Pro (23H2)
  • Visual Studio Community 2022 (17.12.0)

手順

  • Visual Studio Installer を起動し、 変更 ボタンを押下

  • デフォルトでインストールされているWindows 11 SDKからチェックを外し、古いバージョンのSDKにチェックを入れなおして 変更 ボタンを押下

筆者の環境では、初期設定で 10.0.22621.0 がインストールされていましたが、 10.0.22000.0 へ変更したところ、Cドライブ直下から該当のDLLが消滅しました。

以上になります。

なお、自分の場合、Windows 11 SDKはUnityのIL2CPPビルドで使用する目的だったため 10.0.19041.0 以降のバージョンであれば問題がなく、今回はバージョンのロールバックで対応できましたが、最新のSDKがどうしても必要な場合は上記Stack Overflowの投稿の手順に従い、レジストリの値の書き換えで対応するか、諦めてそのまま使うしかなさそうです。

Discussion