You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Inno Setup中显示安装目录且禁止用户修改?

在Inno Setup中仅显示安装目录且禁止修改的实现方法

有两种实用方案可以满足你的需求,直接看代码和说明:

方法一:改造默认目录页面(保留原样式,仅禁用修改)

在脚本的[Code]段添加以下代码,将默认目录输入框设为只读,同时禁用浏览按钮:

[Code]
procedure InitializeWizard;
begin
  // 把目录输入框设为只读,禁止手动编辑
  WizardForm.DirEdit.ReadOnly := True;
  // 禁用浏览按钮,阻止用户选择其他路径
  WizardForm.BrowseButton.Enabled := False;
  
  // 如果你已经在[Setup]段用DefaultDirName指定了固定路径,这行可以省略
  // 手动指定路径的话,取消注释并替换为你的目标路径
  // WizardForm.DirEdit.Text := 'C:\你的固定安装路径';
end;

要是你已经在[Setup]段通过DefaultDirName设置了固定路径(比如DefaultDirName={pf}\MyApplication),输入框会自动加载该路径,无需手动赋值。

方法二:自定义页面展示安装路径(完全替换默认目录页)

如果不想用默认目录页的样式,可以禁用它,新建一个自定义页面专门展示路径:

[Setup]
DisableDirPage=yes

[Code]
var
  CustomDirPage: TWizardPage;
  DirLabel: TLabel;

procedure InitializeWizard;
begin
  // 创建自定义页面,设置标题和提示文本
  CustomDirPage := CreateCustomPage(wpWelcome, '安装目录确认', '程序将安装到以下路径:');
  
  // 添加标签显示固定路径
  DirLabel := TLabel.Create(CustomDirPage);
  DirLabel.Parent := CustomDirPage.Surface;
  // 设置你要展示的固定路径
  DirLabel.Caption := 'C:\你的固定安装路径';
  // 可选:给路径加粗,提升视觉辨识度
  DirLabel.Font.Style := DirLabel.Font.Style + [fsBold];
end;

这种方式灵活性更高,你可以自由调整页面布局、添加额外说明文字,完全按需求定制展示效果。

内容的提问来源于stack exchange,提问作者emendelson

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.23 18:02:08