From 38b2a2d022f519b2bdd19774c1aafb95a9871bf7 Mon Sep 17 00:00:00 2001 From: bookworm Date: Fri, 10 Apr 2026 12:28:51 +0800 Subject: [PATCH] =?UTF-8?q?feat(v1.8.0):=20=E7=A5=9D=E8=B4=BA=E9=97=AA?= =?UTF-8?q?=E5=B1=8F=E5=8A=A8=E7=94=BB=E6=9B=BF=E4=BB=A3=20MsgBox=20+=20cm?= =?UTF-8?q?d=20=E9=BB=91=E7=AA=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 安装成功后的体验: - 移除: MsgBox "安装成功" 弹窗 + cmd.exe /k claude 黑窗口 - 新增: 品牌闪屏 (深色底 + 蓝紫装饰条 + 绿色大勾) - 淡入动画 (300ms) → 停留 2.5s → 淡出 (250ms) - 显示: 版本号 + Skills/Hooks 数量 + "善读者,必善造" - 底部提示 "双击桌面 Bookworm 图标即可启动" - 不再自动弹出 cmd 窗口 (用户通过桌面快捷方式启动) Co-Authored-By: Claude Opus 4.6 (1M context) --- auto-setup.ps1 | 103 ++++++++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 97 insertions(+), 6 deletions(-) diff --git a/auto-setup.ps1 b/auto-setup.ps1 index 27f2597..3757060 100644 --- a/auto-setup.ps1 +++ b/auto-setup.ps1 @@ -16,7 +16,7 @@ param( $ErrorActionPreference = "Stop" # ─── 版本号 (每次更新递增, build.ps1 自动读取) ────── -$BWVersion = "1.7.1" +$BWVersion = "1.8.0" # ─── B4: 单实例保护 (防止双击两次导致竞态) ───────── $mutexCreated = $false @@ -1308,7 +1308,7 @@ try { } } catch { Bw-Log "WARN" "7c 冲突修复失败: $_" } -# 关闭 GUI 进度窗口 (后续由 Show-MsgBox 显示成功/失败) +# 关闭进度窗口 Close-ProgressForm # 创建桌面快捷方式 @@ -1316,12 +1316,103 @@ New-DesktopShortcuts if ($allOK -and $env:ANTHROPIC_API_KEY) { Bw-Log "DONE" "v$BWVersion 安装成功 ($skillCount Skills / $hookCount Hooks)" - Show-MsgBox "Bookworm Portable v$BWVersion 安装成功!`n`n$skillCount Skills / $hookCount Hooks 全部就绪`n`n点击确定后将自动启动 Claude Code。`n`n日志: $BWLogFile" "安装成功 v$BWVersion" "OK" "Information" | Out-Null - if (-not $SkipLaunch) { - # 启动 Claude Code: 用户的 Claude Code 由 cmd 窗口启动 (PS2EXE -NoConsole 下会创建新窗口) - Start-Process -FilePath "cmd.exe" -ArgumentList "/k", "claude --dangerously-skip-permissions" + # ═══ 祝贺闪屏 (2.5 秒自动消失) ═══ + $splash = New-Object System.Windows.Forms.Form + $splash.FormBorderStyle = "None" + $splash.StartPosition = "CenterScreen" + $splash.Size = New-Object System.Drawing.Size(480, 300) + $splash.BackColor = [System.Drawing.Color]::FromArgb(24, 25, 38) + $splash.TopMost = $true + $splash.ShowInTaskbar = $false + $splash.Opacity = 0.0 + + # 品牌蓝紫装饰条 + $topBar = New-Object System.Windows.Forms.Panel + $topBar.Location = New-Object System.Drawing.Point(0, 0) + $topBar.Size = New-Object System.Drawing.Size(480, 4) + $topBar.BackColor = [System.Drawing.Color]::FromArgb(88, 101, 242) + $splash.Controls.Add($topBar) + + # 大勾图标 + $checkLabel = New-Object System.Windows.Forms.Label + $checkLabel.Location = New-Object System.Drawing.Point(0, 35) + $checkLabel.Size = New-Object System.Drawing.Size(480, 55) + $checkLabel.Text = [char]0x2714 + $checkLabel.Font = New-Object System.Drawing.Font("Segoe UI", 36) + $checkLabel.ForeColor = [System.Drawing.Color]::FromArgb(46, 160, 67) + $checkLabel.TextAlign = [System.Drawing.ContentAlignment]::MiddleCenter + $splash.Controls.Add($checkLabel) + + # 主标题 + $mainTitle = New-Object System.Windows.Forms.Label + $mainTitle.Location = New-Object System.Drawing.Point(0, 95) + $mainTitle.Size = New-Object System.Drawing.Size(480, 38) + $mainTitle.Text = "Bookworm v$BWVersion 安装成功" + $mainTitle.Font = New-Object System.Drawing.Font("Segoe UI", 18, [System.Drawing.FontStyle]::Bold) + $mainTitle.ForeColor = [System.Drawing.Color]::White + $mainTitle.TextAlign = [System.Drawing.ContentAlignment]::MiddleCenter + $splash.Controls.Add($mainTitle) + + # 副标题 + $subTitle = New-Object System.Windows.Forms.Label + $subTitle.Location = New-Object System.Drawing.Point(0, 140) + $subTitle.Size = New-Object System.Drawing.Size(480, 28) + $subTitle.Text = "$skillCount Skills / $hookCount Hooks / 全部就绪" + $subTitle.Font = New-Object System.Drawing.Font("Segoe UI", 11) + $subTitle.ForeColor = [System.Drawing.Color]::FromArgb(160, 170, 200) + $subTitle.TextAlign = [System.Drawing.ContentAlignment]::MiddleCenter + $splash.Controls.Add($subTitle) + + # 祝福语 + $wish = New-Object System.Windows.Forms.Label + $wish.Location = New-Object System.Drawing.Point(0, 190) + $wish.Size = New-Object System.Drawing.Size(480, 30) + $wish.Text = "善读者,必善造。使用愉快!" + $wish.Font = New-Object System.Drawing.Font("Segoe UI", 12) + $wish.ForeColor = [System.Drawing.Color]::FromArgb(88, 101, 242) + $wish.TextAlign = [System.Drawing.ContentAlignment]::MiddleCenter + $splash.Controls.Add($wish) + + # 底部提示 + $hint = New-Object System.Windows.Forms.Label + $hint.Location = New-Object System.Drawing.Point(0, 250) + $hint.Size = New-Object System.Drawing.Size(480, 22) + $hint.Text = "双击桌面 Bookworm 图标即可随时启动" + $hint.Font = New-Object System.Drawing.Font("Segoe UI", 9) + $hint.ForeColor = [System.Drawing.Color]::FromArgb(100, 110, 130) + $hint.TextAlign = [System.Drawing.ContentAlignment]::MiddleCenter + $splash.Controls.Add($hint) + + # 底部装饰条 + $bottomBar = New-Object System.Windows.Forms.Panel + $bottomBar.Location = New-Object System.Drawing.Point(0, 296) + $bottomBar.Size = New-Object System.Drawing.Size(480, 4) + $bottomBar.BackColor = [System.Drawing.Color]::FromArgb(88, 101, 242) + $splash.Controls.Add($bottomBar) + + # 淡入动画 + 定时关闭 + $splash.Show() + for ($i = 0; $i -le 10; $i++) { + $splash.Opacity = $i / 10.0 + $splash.Refresh() + Start-Sleep -Milliseconds 30 } + # 停留 2.5 秒 + $sw = [System.Diagnostics.Stopwatch]::StartNew() + while ($sw.ElapsedMilliseconds -lt 2500) { + [System.Windows.Forms.Application]::DoEvents() + Start-Sleep -Milliseconds 50 + } + # 淡出 + for ($i = 10; $i -ge 0; $i--) { + $splash.Opacity = $i / 10.0 + $splash.Refresh() + Start-Sleep -Milliseconds 25 + } + $splash.Close() + $splash.Dispose() + } else { Bw-Log "DONE" "安装完成但部分受限 allOK=$allOK hasKey=$($env:ANTHROPIC_API_KEY -ne $null)"