web-dev-qa-db-ja.com

Visual Studio 2017はその構成をどこに保存しますか?

VS 2015以前では、設定はレジストリに保存されていました。 HKEY_CURRENT_USER\SOFTWARE\Microsoft\VisualStudio\14.0_Config。 VS 2017では、VSの複数のインスタンスをサポートするために、 この投稿 に従って設定がレジストリから移動されました。

this SO answer に従って、Windowsがハイコントラストモードのときにダークテーマを強制するようにレジストリを編集してきました。VSでも同じようにしたいです2017が、この変更を行うために、設定が保存されている場所を見つけることができません。

Visual Studio 2017のこれらの設定はどこに保存されますか?

34
Geir Sagberg

このブログ投稿 :で答えを見つけました

私のマシンの通常のHKEY_CURRENT_USER\Software\Microsoft\VisualStudio\15.0キーがどのように空であるかを確認し、15.0_Configキーがないことに注意してください。

Regedit

代わりに、VS 2017プライベートレジストリはAppDataフォルダーに保存されます。

AppData

さいわい、regedit.exeを使用してプライベートHiveを読み込むことができます。 HKEY_USERSノードを選択し、[ファイル]> [ハイブのロード…]メニューをクリックする必要があります。 privateregistry.binファイルを選択し、Hiveに名前を付けて(「VS2017PrivateRegistry」と入力しました)、通常どおり15.0_Configキーが表示されます(注:完了したら、[ファイル]> [Hiveのアンロード]を使用します)。

Private registry

このガイドを使用して、プライベートレジストリを読み込み、 SO上記の回答 からの変更を行い、Hiveをアンロードし、ダークテーマでVS 2017を開始することができました!

[〜#〜] edit [〜#〜]:レジストリの編集に使用したPowerShellスクリプトをわずかに変更する必要がありました。これが更新バージョンです誰かが興味がある場合:

EDIT2:プライベートレジストリのロードも自動的に含むように変更され、Hiveのアンロードを許可するガーベスコレクションが含まれます。

[〜#〜] note [〜#〜]:ユーザー名の正しいパスを見つける必要があります(C:\Users\Geir)およびVSバージョン(15.0_8165452c)。

New-PSDrive HKU Registry HKEY_USERS

reg load 'HKU\VS2017PrivateRegistry\' "C:\Users\Geir\AppData\Local\Microsoft\VisualStudio\15.0_8165452c\privateregistry.bin"

$HighConstrastTheme = "HKU:\VS2017PrivateRegistry\Software\Microsoft\VisualStudio\15.0_8165452c_Config\Themes\{a5c004b4-2d4b-494e-bf01-45fc492522c7}"
$DarkTheme = "HKU:\VS2017PrivateRegistry\Software\Microsoft\VisualStudio\15.0_8165452c_Config\Themes\{1ded0138-47ce-435e-84ef-9ec1f439b749}"

Remove-Item -Path $HighConstrastTheme -Recurse
Copy-Item -Path $DarkTheme -Destination $HighConstrastTheme -Recurse

[gc]::collect()

reg unload 'HKU\VS2017PrivateRegistry'
65
Geir Sagberg

すべてを自動的に実行し、何らかの理由で復元する必要がある場合に備えて、ハイコントラストのテーマをバックアップするバッチファイルベースのアプローチを実装しました。

https://randomshaper.blogspot.com.es/2017/06/visual-studio-2017-high-contrast-hack.html で見つけることができます

3
Doodler

これに対する本当の修正は、Visual Studioチームが開発者がテーマを設定できるようにすることです。これを修正することに興味がある場合は、このVS問題レポートにアクセスして、それをフォローし、それをサポートするコメントを作成してください。現在検討中です。

Windowsがハイコントラストモードの場合、Visual Studioはユーザーにハイコントラストテーマの使用を強制します

0
Hawkez

Process Monitor からログを確認すると、同じレジストリキーを確認できます。

VS registry key access

作成されていないだけです。作成する必要があります。名前の一部(e3d5273c)マシンによって異なる場合があります。

0
Paweł Łukasik

次の VS2017PrivateRegistry.cmd バッチファイルは、すべてのVisual Studio 2017インスタンスのレジストリキーをHKLM_TMPVS_ [id]としてロードし、レジストリエディターを起動してVisual Studio設定を変更し、レジストリエディターを閉じるときにキーをアンロードします。

for /d %%f in (%LOCALAPPDATA%\Microsoft\VisualStudio\15.0_*) do reg load HKLM\_TMPVS_%%~nxf "%%f\privateregistry.bin"
regedit
for /d %%f in (%LOCALAPPDATA%\Microsoft\VisualStudio\15.0_*) do reg unload HKLM\_TMPVS_%%~nxf

注:最初に実行中のVisual Studio 2017インスタンスをバックグラウンドプロセスで閉じてから、このファイルを管理者権限で実行します。

Visual Studio 2017プライベートレジストリ設定の変更 を参照してください。

0
Sergey Vlasov