最近のVisual Studioでは、一般的なレジストリに記録されている情報(regedit.exeで確認できる情報)以外に、プライベートレジストリハイブと呼ばれるアプリケーション固有のレジストリデータに記録されている情報が使われていて、いくつかの設定内容がレジストリエディタでは参照・編集できなくなっている。
(プライベートレジストリハイブのデータもハイブファイルをregeditでロードすれば参照・編集できるが、なぜかうまく反映されない)
これらのプライベートレジストリハイブ内の情報は、Visual Studioに付属しているVsRegEdit.exeというコマンドラインツールを使用することで、修正することができる。
Visual Studioのインストール先のIDE本体がある場所と同じフォルダにある。
通常はC:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE
とかC:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\Common7\IDE
とか。
詳細はvsregedit.exe /?
で確認して欲しい。
結構意味不明。
とりあえず
C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE> vsregedit enum local HKCU ""
で現在の個人の設定が見れる。2019だけ。2017にはenumはないっぽい。
VisualStudioLocationを変更したいのであれば、
C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE> vsregedit set local HKCU "" VisualStudioLocation string "C:\Users\%USERNAME%\MyVsLocation"
とかで設定変更可能。
普通のコマンドプロンプト(一般権限、管理者権限共に)では実行可能だが反映されない。
これでだいぶハマった。
実はVisual Studioをインストールすると一緒にスタートメニューに登録される「開発者コマンド プロンプト for VS 20XX」を起動し、このプロンプト内で実行しないと反映されない。
ひどい。警告くらいしてくれれば良いのに。