d8c0bd74d2
- 新增 lib/core/update/:app_updater(入口+进度对话框) + io/web 条件实现
- Windows: Dio 下载 setup.exe(无 MOTW) -> 启动安装包 -> 退出,规避浏览器
SmartScreen 下载页与运行时拦截
- macOS: 下载 zip -> ditto 解压 -> 后台脚本等退出后替换 /Applications 内
app 并重启(权限失败回退访达高亮)
- Web: 刷新页面;其它平台回退浏览器下载
- app_shell 更新 banner/强制更新弹窗、设置页「立即更新」改走应用内更新
- 设置页「检查更新」加反馈(正在检查/已是最新/发现新版本/失败)
- jiu-installer.iss 加 CloseApplications=yes 便于覆盖
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
58 lines
1.9 KiB
Plaintext
58 lines
1.9 KiB
Plaintext
; Inno Setup script for 岩美酒库 Windows 客户端
|
|
; Compiled in CI:
|
|
; ISCC /DAppVer=<ver> "/DSrcDir=<ReleaseDir>" "/DOutDir=<dist>" jiu-installer.iss
|
|
; Produces: <OutDir>\jiu-windows-x64-setup.exe
|
|
|
|
#ifndef AppVer
|
|
#define AppVer "0.0.0"
|
|
#endif
|
|
#ifndef SrcDir
|
|
#define SrcDir "."
|
|
#endif
|
|
#ifndef OutDir
|
|
#define OutDir "."
|
|
#endif
|
|
|
|
#define MyAppName "岩美酒库"
|
|
#define MyAppExe "jiu_client.exe"
|
|
#define MyAppPublisher "岩美"
|
|
|
|
[Setup]
|
|
AppId={{A3F5C1E2-9B47-4D8A-B6E0-2C1D4F8A9E33}
|
|
AppName={#MyAppName}
|
|
AppVersion={#AppVer}
|
|
AppPublisher={#MyAppPublisher}
|
|
DefaultDirName={autopf}\Jiu
|
|
DefaultGroupName={#MyAppName}
|
|
DisableProgramGroupPage=yes
|
|
OutputDir={#OutDir}
|
|
OutputBaseFilename=jiu-windows-x64-setup
|
|
Compression=lzma2
|
|
SolidCompression=yes
|
|
WizardStyle=modern
|
|
ArchitecturesAllowed=x64
|
|
ArchitecturesInstallIn64BitMode=x64
|
|
UninstallDisplayName={#MyAppName}
|
|
UninstallDisplayIcon={app}\{#MyAppExe}
|
|
; 应用内更新时本应用会先退出再启动安装包;这些选项确保能顺利覆盖。
|
|
CloseApplications=yes
|
|
RestartApplications=no
|
|
|
|
; 说明:未声明 [Languages],使用 Inno Setup 内置英文向导(简体中文语言文件
|
|
; ChineseSimplified.isl 默认不随 Inno Setup 安装,依赖它会导致编译找不到文件)。
|
|
; app 名称与快捷方式仍为中文(下方 UTF-8 字符串,与向导语言无关)。
|
|
|
|
[Tasks]
|
|
Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: checkedonce
|
|
|
|
[Files]
|
|
Source: "{#SrcDir}\*"; DestDir: "{app}"; Flags: recursesubdirs createallsubdirs ignoreversion
|
|
|
|
[Icons]
|
|
Name: "{group}\{#MyAppName}"; Filename: "{app}\{#MyAppExe}"
|
|
Name: "{group}\卸载 {#MyAppName}"; Filename: "{uninstallexe}"
|
|
Name: "{commondesktop}\{#MyAppName}"; Filename: "{app}\{#MyAppExe}"; Tasks: desktopicon
|
|
|
|
[Run]
|
|
Filename: "{app}\{#MyAppExe}"; Description: "{cm:LaunchProgram,{#MyAppName}}"; Flags: nowait postinstall skipifsilent
|