向安装程序添加表单以选择安装JDK的路径,然后更改环境变量

时间:2016-11-16 14:21:59

标签: inno-setup

更新:

我已成功使安装程序正常工作。 (添加了发行说明,许可协议部分,选择安装程序的位置,让它产生一个destop shortcup等)我想要添加它,在安装期间,我希望用户选择他安装JDK的路径。我想采用这条路径,创建一个名为JAVA_HOME的系统环境变量,并将它的值设为这个选择的路径。我该怎么做呢?显示我的代码是很困难的,因为我在手机上。但如果我必须,我会努力这样做。

1 个答案:

答案 0 :(得分:1)

基于

[Setup]
ChangesEnvironment=yes

[Registry]
Root: HKLM; Subkey: "SYSTEM\CurrentControlSet\Control\Session Manager\Environment"; \
    ValueType: string; ValueName: "JAVA_HOME"; ValueData:"{code:GetJavaHome}"; \
    Flags: preservestringtype

[Code]

var
  JavaHomePage: TInputDirWizardPage;

procedure InitializeWizard();
begin
  JavaHomePage :=
    CreateInputDirPage(
      wpSelectDir, 'Java Path', 'Where do you have Java installed to?', '', False, '');
  JavaHomePage.Add('');
end;

function GetJavaHome(Param: string): string;
begin
  Result := JavaHomePage.Values[0];
end;

如果您想提供一些有意义的默认设置,请参阅@Matthieu to Inno Setup - Setting Java Environment Variable的答案。