Я нашел ответ в this blog post:
Посмотрите, как пустой является регулярным HKEY_CURRENT_USER \ Software \ Microsoft \ VisualStudio \ +15,0 ключа на моей машине и заметил, что там нет ключа 15.0_Config:

Вместо этого, VS 2017 частный реестр хранится в папке AppData:

К счастью, вы можете использовать regedit.exe для загрузки частного улья. Вам нужно выбрать узел HKEY_USERS и щелкнуть меню File> Load Hive .... Вы выбираете privateregistry.bin файл, дать имя ульи (я вошел в «VS2017PrivateRegistry»), и теперь вы можете увидеть ключ 15.0_Config населенного как обычно (примечание: Файл> Выгрузить куст, когда сделаны):

Используя это руководство, я был в состоянии загрузить частный реестр, сделать изменения от the SO answer mentioned earlier, выгрузить улей и начать VS 2017 с Темной темой!
EDIT: мне пришлось немного изменить сценарий PowerShell, я использовал для редактирования реестра, здесь является обновленной версией, если кому-то интересно:
EDIT2: Теперь изменен, чтобы включить загрузку частного реестр автоматически, а также, в том числе коллекции garbace, чтобы обеспечить разгрузку улей:
ПРИМЕЧАНИЕ: Вы должны найти свой собственный правильный путь для имени пользователя (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'
Привет. Спасибо за ваш сценарий powershell. Во всех случаях, похоже, не работают только пути к файлам и путь к реестру. Я использую версию выпуска Visual Studio 2017 и путь к частному реестру и путь к настройкам темы в реестре. Чтобы выполнить эту работу, мне пришлось сменить сценарий следующим образом: – jacobdeboer
@jacobdeboer Да, пути могут быть немного разными для вашего случая. Я добавлю об этом примечание. –
Загружает эти ульи и редактирует их программно? Класс реестра C# Win32, похоже, не поддерживает это, если я не ошибаюсь? – Shiv