Jeevan Jain Ответов: 2

Приложение создает реестр в другом месте для win10


привет,
В нашем приложении c# мы создали реестр с помощью "Registry.LocalMachine", и он создал реестр по адресу (для 32-битного ПК) "HKEY_LOCAL_MACHINE\SOFTWARE\VMS". Он отлично работает с XP/Win7. Но для Win10 он создает реестр в другом месте
"HKEY_USERS\S-1-5-21-1562210660-278341176-3609463930-1001\Software\Classes\VirtualStore\MACHINE\SOFTWARE\Microsoft\VMS"

Пожалуйста, дайте мне знать, если есть какое-либо решение для этого, так что наше приложение создает реестр в"HKEY_LOCAL_MACHINE\SOFTWARE\VMS", даже если с win10
Кроме того, мы видели, что многие приложения(например, mozila) создают реестр в разделе HKEY_LOCAL_MACHINE\SOFTWARE\, даже если win10.

Что я уже пробовал:

Для этого мы испробовали эти 2 решения
1 мы установили track bar, чтобы никогда не уведомлять о "настройке учетной записи Пользователя и управления" с панели управления
2. Отключите UAC с помощью редактора реестра (RegEdit)
Запустите редактор реестра (RegEdit) и перейдите к следующему разделу реестра:
Программное обеспечение реестра HKEY_LOCAL_MACHINE\\Майкрософт\системных политик Windows\CurrentVersion равное\\
Найдите следующее значение REG_DWORD:
EnableLUA
Значение EnableLUA на 0.

2 Ответов

Рейтинг:
2

Tim Paaschen

Привет,
ваша проблема связана не с Windows XP / 7 против 8/10, а с 32-битными и 64-битными версиями windows. Если вы запускаете 32-битное приложение на 64-битной windows, оно выполняется с помощью WoW64 (Windows on Windows 64). WoW64 перенаправляет ваш реестр-доступ к другой части реестра (то же самое для доступа к файлам в определенных системных папках).
Одним из подходов было бы предоставление 64-разрядной версии вашего приложения для соответствующих операционных систем.

С уважением,
Тим


Рейтинг:
1

OriginalGriff

Самое простое решение таково:Не используйте реестр.
Это гораздо лучшая идея, чем вы думаете: использование реестра более ограничено, чем было, и становится все более ограниченным со временем, а не проще. Так что то, что работает сейчас, может не сработать в будущем, как вы заметили с Win 7 / Win 10. И это не зря: слишком много приложений злоупотребляли им и причиняли ущерб или чрезмерное раздувание.
Вместо использования реестра используйте файл конфигурации или сохраните его в" безопасной " папке: Где я должен хранить свои данные?[^] предлагает некоторые из них и показывает код для доступа к ним.