Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
KANSoftWare

Создание скрипта для Inno Setup: настройка реестра Windows 10 в зависимости от архитектуры

Delphi , ОС и Железо , Реестр

Вопрос пользователя заключается в необходимости создания скрипта для Inno Setup, который бы выполнял определенные изменения в реестре только на операционной системе Windows 10. Эти изменения должны зависеть от архитектуры системы: для 64-битных версий должны быть изменены два ключа реестра, а для 32-битных - только один. В качестве примера изменения предлагается добавление 32-битного DWORD значений в указанные ключи реестра.

Оригинальный заголовок:

Настройка реестра Windows 10 в Inno Setup в зависимости от архитектуры системы

Описание проблемы:

Пользователь пытается создать скрипт для Inno Setup, который бы после установки программы myprogram.exe на Windows 10 выполнял изменения в реестре. Эти изменения должны быть специфичны для Windows 10 и зависеть от того, установлена ли 32-битная или 64-битная версия системы. В частности, нужно изменить значения DWORD для ключей реестра, связанных с Internet Explorer.

Ключи реестра для изменения:

  • Для 64-битных версий Windows:
    • HKLM\Software\Microsoft\Internet Explorer\Main\Feature Control\FEATURE_DOCUMENT_COMPATIBLE_MODE
    • HKLM\Software\Wow6432Node\Microsoft\Internet Explorer\Main\Feature Control\FEATURE_DOCUMENT_COMPATIBLE_MODE
  • Для 32-битных версий Windows:
    • HKLM\Software\Microsoft\Internet Explorer\Main\Feature Control\FEATURE_DOCUMENT_COMPATIBLE_MODE

В каждом из этих ключей необходимо добавить DWORD с именем myprogram.exe и значением $7BF.

Пример неудачной попытки:

Пользователь пытался использовать процедуру CurStepChanged и функции RegWriteDwordValue для внесения изменений, однако столкнулся с трудностями в определении разрядности системы и создании DWORD с указанным значением.

Решение проблемы:

Для решения этой задачи не требуется использование скриптов на Pascal. Inno Setup предоставляет возможность настройки реестра непосредственно в скрипте. Важно настроить установку на работу в 64-битном режиме, чтобы использовать все возможности Inno Setup для работы с 32-битными и 64-битными ключами реестра.

[Setup]
; Позволяем установке работать в 64-битном режиме
ArchitecturesInstallIn64BitMode=x64

[Registry]
; Изменения для 32-битных и 64-битных систем
Root: HKLM; \
    Subkey: "Software\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_DOCUMENT_COMPATIBLE_MODE"; \
    ValueType: dword; ValueName: "myprogram.exe"; ValueData: $7BF; MinVersion:10.0.10240

; На 64-битных системах также изменяем ключ в Software\Wow6432Node\Microsoft\...
; Используем директиву HKLM32 для работы с 32-битными ключами в 64-битной системе
Root: HKLM32; \
    Subkey: "Software\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_DOCUMENT_COMPATIBLE_MODE"; \
    ValueType: dword; ValueName: "myprogram.exe"; ValueData: $7BF; MinVersion:10.0.10240; \
    Check: IsWin64

Обратите внимание, что в пути к ключам реестра правильно написано FeatureControl, а не Feature Control.

Заключение:

Используя Inno Setup, можно легко настроить изменения в реестре Windows 10, которые будут зависеть от разрядности установленной операционной системы. Это позволяет автоматизировать процесс внесения необходимых изменений в реестр при установке программы.

Создано по материалам из источника по ссылке.

Создание скрипта для Inno Setup, который автоматически изменяет настройки реестра Windows 10 для Internet Explorer в зависимости от архитектуры системы (32-бит или 64-бит).


Комментарии и вопросы

Получайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.


:: Главная :: Реестр ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-12-22 20:14:06
2025-06-16 07:02:44/0.005983829498291/0