2016-07-19 1 views
1

Я хочу создать Inno Setup с лицензией, загруженной из внешнего файла, чтобы она была доступна для редактирования. Это возможно?Inno Setup Редактируемый/Внешний файл лицензии

Лицензия должна быть исключена из файла .exe установщика, но в той же папке/пути.

+0

Вы хотите, чтобы пользователь мог редактировать лицензию в мастере? Или вы просто хотите, чтобы установщик загрузил лицензию из внешнего файла? –

+0

Я хочу, чтобы установщик загрузил лицензию из внешнего файла. Например: я передаю установщик через CD человеку. Этот человек должен иметь возможность редактировать файл лицензии. – Bonzo

ответ

0

Установите LicenseFile directive в файл лицензии по умолчанию, чтобы установщик создал «Лицензионное соглашение». А также иметь некоторую резервную лицензию, если внешняя лицензия не существует.

А затем в InitializeWizard event function загрузите внешнюю лицензию, если она существует.

[Setup] 
LicenseFile=default_license.txt 

[Code] 

procedure InitializeWizard(); 
var 
    LicenseFile: string; 
begin 
    LicenseFile := ExpandConstant('{src}\license.txt'); 
    if FileExists(LicenseFile) then 
    begin 
    Log(Format('%s exists, loading a license', [LicenseFile])); 
    WizardForm.LicenseMemo.Lines.LoadFromFile(LicenseFile); 
    end 
    else 
    begin 
    Log(Format('%s does not exist, keeping the default license', [LicenseFile])); 
    end; 
end; 
+0

Спасибо, он отлично работает! – Bonzo