Мое приложение было создано с Java, и для его работы в Windows требуется привилегия администратора. Используя Inno Setup, я могу изменить изменение реестра с помощью следующего кода, и он отлично подходит для Windows 7, однако для Windows 10 и 8 у меня нет такого же успеха, поскольку реестра, по-видимому, больше не существует.Установите флаг совместимости приложений «RUNASADMIN» в Inno Setup
[Registry]
Root: HKCR; Subkey: "SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers\"; ValueType: String; ValueName: "{app}\AppExecutable.exe"; ValueData: "RUNASADMIN"; Flags: uninsdeletekeyifempty uninsdeletevalue;
Root: HKLM; Subkey: "SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers\"; ValueType: String; ValueName: "{app}\AppExecutable.exe"; ValueData: "RUNASADMIN"; Flags: uninsdeletekeyifempty uninsdeletevalue;
Я прочитал это может быть сделано с исполняемым манифестом, но я предполагаю, что это только для приложений, сделанных в Visual Studio, который не мой сценарий. Есть ли способ выразить это в манифесте Java?
Я хотел бы знать, могу ли я сделать это другим способом, если есть другой реестр, который я могу изменить или мне нужно прикрепить и запустить другой тип скрипта во время установки.