From 8c0580d1408d75f022499e7a07d328ed85ea596a Mon Sep 17 00:00:00 2001 From: haosicheng Date: Wed, 29 Oct 2025 14:58:09 +0800 Subject: [PATCH] =?UTF-8?q?[patch]=20=E6=96=B0=E5=A2=9E=E8=87=AA=E5=8A=A8?= =?UTF-8?q?=E6=9B=B4=E6=96=B0=E5=8A=9F=E8=83=BD=20=E6=A8=A1=E5=9D=97=20?= =?UTF-8?q?=E4=BC=98=E5=8C=96=E8=BF=9B=E5=BA=A6=E6=9D=A1=E6=98=BE=E7=A4=BA?= =?UTF-8?q?=20=E6=A8=AA=E5=B9=85=E5=9B=BE=E7=89=87=E8=B5=84=E6=BA=90?= =?UTF-8?q?=E4=B8=8A=E4=BC=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- auto_updater.py | 135 ++++++++--- installer/build_installer.py | 3 + main.py | 152 ++++++++---- static/hengfu.jpg | Bin 0 -> 204092 bytes update_dialog.py | 454 ++++++++++++++++++++++++++--------- 5 files changed, 545 insertions(+), 199 deletions(-) create mode 100644 static/hengfu.jpg diff --git a/auto_updater.py b/auto_updater.py index 80d63f3..e464bcf 100644 --- a/auto_updater.py +++ b/auto_updater.py @@ -14,6 +14,7 @@ import time import socket from pathlib import Path from PyQt5.QtCore import QThread, pyqtSignal +import ctypes class UpdateDownloader(QThread): @@ -131,6 +132,59 @@ class UpdateDownloader(QThread): self.is_cancelled = True +def run_as_admin(script_path): + """ + 以管理员身份运行脚本(Windows UAC提升) + + 特点: + - 在GUI退出前弹出UAC提示 + - 用户点击"允许"后,脚本以管理员身份运行 + - 用户点击"取消",返回False + + Args: + script_path: 批处理脚本路径 + + Returns: + bool: True表示成功启动(用户点击允许),False表示失败或用户取消 + """ + try: + print(f"[RunAsAdmin] 请求管理员权限执行: {script_path}") + + # 使用 ShellExecute 以管理员身份运行 + # "runas" 参数会触发UAC提示 + ret = ctypes.windll.shell32.ShellExecuteW( + None, # hwnd: 父窗口句柄(None表示无父窗口) + "runas", # lpOperation: 以管理员身份运行 + "cmd.exe", # lpFile: 要执行的程序 + f'/c "{script_path}"', # lpParameters: 命令行参数 + None, # lpDirectory: 工作目录(None表示当前目录) + 0 # nShowCmd: 0=隐藏窗口 + ) + + # 返回值说明: + # >32: 成功 + # <=32: 失败(具体错误码) + # - 5: 用户拒绝UAC(点击"否") + # - 2: 文件未找到 + # - 其他: 其他错误 + + if ret > 32: + print(f"[RunAsAdmin] ✅ 成功:用户已授权,脚本正在以管理员身份运行") + return True + elif ret == 5: + print(f"[RunAsAdmin] ⚠️ 用户取消了UAC授权(返回码: {ret})") + return False + else: + print(f"[RunAsAdmin] ❌ 启动失败(返回码: {ret})") + return False + + except Exception as e: + print(f"[RunAsAdmin] ❌ 异常: {e}") + import traceback + traceback.print_exc() + return False + + def install_update_and_restart(installer_path): """ 简化版更新安装(文件替换方式,不使用NSIS安装) @@ -138,9 +192,10 @@ def install_update_and_restart(installer_path): 工作流程: 1. 将安装包移动到程序目录 2. 创建替换脚本 - 3. 脚本等待程序退出 - 4. 脚本解压并替换文件 - 5. 重启程序 + 3. 以管理员身份启动脚本(提前弹出UAC) + 4. 脚本等待程序退出 + 5. 脚本执行静默安装 + 6. 重启程序 Args: installer_path: 安装包路径 @@ -187,16 +242,16 @@ def install_update_and_restart(installer_path): exe_name ) - # 启动更新脚本(独立进程) - print(f"[Updater] 启动更新脚本: {update_script_path}") - subprocess.Popen( - ['cmd', '/c', update_script_path], - creationflags=subprocess.CREATE_NO_WINDOW | subprocess.DETACHED_PROCESS, - close_fds=True - ) + # 🔥 关键修复:以管理员身份启动批处理脚本,提前触发UAC + print(f"[Updater] 以管理员身份启动更新脚本: {update_script_path}") + success = run_as_admin(update_script_path) - print(f"[Updater] ✅ 更新脚本已启动") - return True + if success: + print(f"[Updater] ✅ 更新脚本已以管理员身份启动") + return True + else: + print(f"[Updater] ❌ 用户取消了UAC授权,更新已取消") + return False except Exception as e: print(f"[Updater] ❌ 启动更新失败: {e}") @@ -231,65 +286,67 @@ def create_update_installer_script(installer_path, install_dir, exe_name): install_dir = os.path.abspath(install_dir) script_content = f"""@echo off -chcp 65001 > nul -title 水滴AI客服智能助手 - 自动更新 +REM ShuiDi AI Assistant Auto Update Script +REM Encoding: UTF-8 BOM + +title ShuiDi AI Assistant - Auto Update echo ============================================ -echo 水滴AI客服智能助手 - 自动更新 +echo ShuiDi AI Assistant Auto Update echo ============================================ echo. -REM 切换到程序目录 +REM Change to program directory cd /d "{install_dir}" -echo [INFO] 程序目录: {install_dir} +echo INFO: Program directory: {install_dir} echo. -REM 等待主程序退出(最多等待30秒) -echo [INFO] 等待主程序退出... +REM Wait for main program to exit (max 60 seconds) +echo INFO: Waiting for main program to exit... set count=0 :wait_main_exit tasklist /FI "IMAGENAME eq {exe_name}" 2>NUL | find /I "{exe_name}" >NUL if NOT ERRORLEVEL 1 ( - if %count% LSS 30 ( + if %count% LSS 60 ( timeout /t 1 /nobreak > nul set /a count+=1 goto wait_main_exit ) else ( - echo [WARN] 主程序未正常退出,强制继续安装 + echo WARN: Main program did not exit normally, forcing installation ) ) -echo [OK] 主程序已退出 +echo OK: Main program exited echo. -REM 执行静默安装(在当前目录下) -echo [INFO] 开始安装更新... -echo [INFO] 安装包: "{installer_path}" -echo [INFO] 目标目录: "{install_dir}" +REM Execute NSIS silent installation +echo INFO: Starting installation... +echo INFO: Installer: "{installer_path}" +echo INFO: Target directory: "{install_dir}" echo. -REM 使用完整路径和引号避免空格问题 -"{installer_path}" /S /D="{install_dir}" +REM Execute installation (with admin rights from NSIS) +"{installer_path}" /S /D={install_dir} -REM 等待安装完成 -echo [INFO] 等待安装完成... -timeout /t 20 /nobreak > nul +REM Wait for installation to complete +echo INFO: Waiting for installation to complete... +timeout /t 25 /nobreak > nul -REM 清理安装包 -echo [INFO] 清理安装包... +REM Cleanup installer +echo INFO: Cleaning up installer... del /f /q "{installer_path}" 2>nul -REM 启动新版本程序 -echo [INFO] 正在启动新版本... +REM Start new version +echo INFO: Starting new version... if exist "{install_dir}\\{exe_name}" ( start "" "{install_dir}\\{exe_name}" - echo [OK] ✅ 程序已启动 + echo OK: Program started successfully ) else ( - echo [ERROR] ❌ 找不到程序文件: {exe_name} - echo [INFO] 请手动启动程序 + echo ERROR: Program file not found: {exe_name} + echo INFO: Please start program manually pause ) -REM 延迟后删除自己 +REM Delete this script after delay timeout /t 2 /nobreak > nul del /f /q "%~f0" 2>nul exit diff --git a/installer/build_installer.py b/installer/build_installer.py index 9ff42cb..846a30a 100644 --- a/installer/build_installer.py +++ b/installer/build_installer.py @@ -159,6 +159,9 @@ class NSISInstaller: Unicode True +# 🔥 请求管理员权限(解决静默安装时的"Access denied"问题) +RequestExecutionLevel admin + # 定义应用程序信息 !define APP_NAME "{self.app_name}" !define APP_NAME_EN "{self.app_name_en}" diff --git a/main.py b/main.py index 0101216..ce7aaf7 100644 --- a/main.py +++ b/main.py @@ -1468,66 +1468,63 @@ class LoginWindow(QMainWindow): try: self.add_log(f"✅ 下载完成: {installer_path}", "SUCCESS") - # 更新进度对话框状态 + # 🎯 更新进度对话框到UAC等待阶段(不关闭对话框) progress_dialog.download_finished(installer_path) - # 延迟1秒,让用户看到"下载完成"提示 - QTimer.singleShot(1000, lambda: self.prepare_install(installer_path, progress_dialog)) + # 延迟2秒,让用户看到"下载完成"提示,然后自动开始安装 + QTimer.singleShot(2000, lambda: self.prepare_install(installer_path, progress_dialog)) except Exception as e: self.add_log(f"处理下载完成事件失败: {e}", "ERROR") def prepare_install(self, installer_path, progress_dialog): - """准备安装""" + """准备安装(不再弹窗询问,直接开始)""" try: - # 关闭进度对话框 - progress_dialog.accept() + # 🔥 不再关闭进度对话框,也不再弹窗询问,直接开始安装 + self.add_log("开始执行自动安装流程", "INFO") - # 提示即将安装 - reply = QMessageBox.information( - self, - "准备安装", - "新版本下载完成!\n\n" - "程序将自动退出并安装新版本,\n" - "安装完成后会自动重启。\n\n" - "是否立即安装?", - QMessageBox.Yes | QMessageBox.No, - QMessageBox.Yes - ) + from auto_updater import install_update_and_restart - if reply == QMessageBox.Yes: - from auto_updater import install_update_and_restart + # 🔥 启动静默安装(带UAC提升) + result = install_update_and_restart(installer_path) + + if result: + # ✅ 用户授权成功,脚本已启动(但在等待GUI退出) + self.add_log("✅ 用户已授权UAC,更新脚本已启动", "SUCCESS") + self.add_log("进度条将执行到100%后提示用户", "INFO") - # 启动静默安装(带自动重启) - if install_update_and_restart(installer_path): - self.add_log("✅ 更新安装已启动,程序即将退出", "SUCCESS") - self.add_log("程序将在安装完成后自动重启", "INFO") - - # 显示提示 - QMessageBox.information( - self, - "正在更新", - "程序即将退出并开始安装。\n\n" - "安装完成后会自动重启,请稍候...", - QMessageBox.Ok - ) - - # 延迟1秒后退出(让用户看到提示) - QTimer.singleShot(1000, self.quit_for_update) - else: - self.add_log("❌ 启动安装失败", "ERROR") - QMessageBox.critical( - self, - "安装失败", - "无法启动安装程序,请手动运行安装包:\n\n" + installer_path, - QMessageBox.Ok - ) + # 🎯 更新进度对话框到UAC授权完成阶段 + progress_dialog.uac_authorized() + + # 🔥 新增:等待进度条执行到100%后再处理 + # 通过定时器循环检查进度是否到100% + self.progress_check_timer = QTimer() + + def check_progress_complete(): + if progress_dialog.restart_progress >= 100: + # 进度已到100%,停止检查并弹窗询问用户 + self.progress_check_timer.stop() + self.show_update_complete_dialog(progress_dialog) + + self.progress_check_timer.timeout.connect(check_progress_complete) + self.progress_check_timer.start(1000) # 每1秒检查一次 else: - self.add_log("用户取消安装", "INFO") - QMessageBox.information( + # ⚠️ 用户取消了UAC授权,或启动失败 + self.add_log("⚠️ 更新已取消(用户取消UAC授权或启动失败)", "WARNING") + + # 关闭进度对话框 + progress_dialog.reject() + + # 显示友好提示 + QMessageBox.warning( self, - "安装包已保存", - f"安装包已保存到:\n{installer_path}\n\n您可以稍后手动运行安装。", + "更新已取消", + "未能启动自动更新。\n\n" + "可能原因:\n" + "• 您取消了管理员权限授权\n" + "• 系统安全策略限制\n\n" + f"安装包已保存到:\n{installer_path}\n\n" + "您可以稍后手动运行安装包进行更新。", QMessageBox.Ok ) @@ -1535,6 +1532,9 @@ class LoginWindow(QMainWindow): self.add_log(f"准备安装失败: {e}", "ERROR") import traceback self.add_log(f"详细错误: {traceback.format_exc()}", "ERROR") + + # 关闭进度对话框 + progress_dialog.reject() def on_download_error(self, error_msg, progress_dialog, download_url, latest_version): """下载失败处理""" @@ -1571,6 +1571,64 @@ class LoginWindow(QMainWindow): except Exception as e: self.add_log(f"处理下载失败异常: {e}", "ERROR") + def show_update_complete_dialog(self, progress_dialog): + """显示更新完成对话框,询问是否立即启动""" + try: + self.add_log("🎉 更新流程已完成,准备提示用户", "SUCCESS") + + # 清理检查定时器 + if hasattr(self, 'progress_check_timer') and self.progress_check_timer: + self.progress_check_timer.stop() + self.progress_check_timer = None + + # 🔥 不立即关闭进度对话框,先弹窗询问用户 + # 弹窗询问用户 + reply = QMessageBox.question( + self, + "更新完成", + "🎉 恭喜!新版本安装成功!\n\n" + "是否立即启动新版本?\n\n" + "• 点击「是」:立即启动新版本\n" + "• 点击「否」:稍后手动启动", + QMessageBox.Yes | QMessageBox.No, + QMessageBox.Yes + ) + + # 关闭进度对话框 + progress_dialog.accept() + + if reply == QMessageBox.Yes: + self.add_log("✅ 用户选择立即启动新版本", "INFO") + self.add_log("🚀 程序立即退出,让批处理脚本完成安装", "INFO") + # 立即退出,让批处理脚本启动新版本(无延迟) + QApplication.instance().quit() + else: + self.add_log("ℹ️ 用户选择稍后手动启动", "INFO") + # 用户选择稍后启动,显示提示后退出 + QMessageBox.information( + self, + "提示", + "程序即将退出。\n\n" + "您可以随时从开始菜单或桌面快捷方式\n" + "启动新版本的水滴AI客服智能助手。", + QMessageBox.Ok + ) + self.add_log("🚀 程序退出", "INFO") + # 立即退出(无延迟) + QApplication.instance().quit() + + except Exception as e: + self.add_log(f"❌ 显示更新完成对话框失败: {e}", "ERROR") + import traceback + self.add_log(f"详细错误: {traceback.format_exc()}", "ERROR") + # 关闭进度对话框 + try: + progress_dialog.reject() + except: + pass + # 出错也要立即退出 + QApplication.instance().quit() + def quit_for_update(self): """为更新而退出程序""" self.add_log("正在退出程序以进行更新...", "INFO") diff --git a/static/hengfu.jpg b/static/hengfu.jpg new file mode 100644 index 0000000000000000000000000000000000000000..cd78df1df884051c6fba2ab76f2ea30c84b8e620 GIT binary patch literal 204092 zcmcG#cUTi&w?6vmZE0b9>tL;CNe`W!EW=5t) z05&!NfQ_{Q{>-yYni?9q-?gzaGBv;bpNL)nt8iQb06+mDK{m!W&pF$BppFRHK zJiLOR{yqN>g*EQ(_}|e1fKlcDf#!eLeEi{~U@sQI25XlNVolCsR*(e?KK@Tw{x9tL zpRn#AUgG5ZPIT60N$4X z0Al37+WzaFJoO0j_>bW@SjQvY-T=T>B>=#E9{@Q04FEXd{2w^h;eX)m91A7J;tR~$ z9s~RVj{xTYrhou|7eIvtsRJ$n)Bu`)Z~#Nr-}!%5{tohgHUg{npDzIZV{93m&)C^6 z0FLmpvGcS2=>$mreVo`i|2~QTDo5Ck9cSk}%5{R{B#XeCkA*+Nd4!$g=uyrSM>yET z*;p_qKj0|Wc{PC>$E-b02gYU|7rgMUc|%B8{pfK%*jtUJNZ4=@01Xyk59$6R%&zUHoE zBj@mmJ1kgm>h^^<|11oZYMSkz^+?E2G1amef1g|6qZF}-81-`srpy)ouIZ(Fms$-; zoOjqKy>Y!`V`Lnw{F`p`>iu(Ut=-}+XZ6*sjB*9ua$e&K&T}%#{iaH)?<+f$4U`{- z?!^xYF0{W1E*+nJ7${RFWc{%$JWs&hQtPfwrXp53FC*_qnY^tRBD<`@rf*PFKNeDQ zIFfzdu<~&c)zY_KziuG7D*OIWqR)oH`g2s4cc-JWMV`j{0&b1-N-znXG=cB0?J7`G zFg&#WfM(ryP4+EWkyD}P+_>MR+zQfgm1cx=N1}pokeEq8uyNqzO2DmT?l$(mR{|2V zzpN}ms22=j>@pAi%X2($gSansv8(=AzAX=8lRx1iUx$Lfd~QcfajtckavFPoF9QBt zSmGXHHf-r18vHpI6i0}N+B*yv{{t`xsA8Cye^vO7FY}WRv&4 ztlZQu0AN!9l_6f1vH5XK0*+1+D;G_2SIX|ZW>(^@ZDA&%;LmWy38m03p(^}qvj#8* z@fqwjg?FP727*UGG|Cr*)cV4aFhVNdGi1PR#1hG?dMF-k{27eFxl;&&fT%vwj3&8B z3)@)T^H!-EQQY`eb4QYU8y9Vj$;0hAkt#v$Oft{$nFX?63HPq<>8|G}a+GJ0dn$h8 zDiJzPLQQUZB}*6w_s)Vao$i>KGMBI}e_e*lS~ypnXSn!?^wdm#K7XaF76IAg$`urO z%7T6n33VK$#UbVoUD30zukLi2U>3HHllQ{WbNIIN#q)EC(YS~lSQ)J^@du!*Jj{&x1JK#W zvBk{&1`(WLi4~Hr45*}m{$8>Obq9Y)fpWO7Ghb+7{s0P#95y=mnNTEot7CPQKFWP{>nJRG{*{JKrbc|1*#X)!Vc6Zhw7r~IULGtpUXtFR@R&dWh)AdO4ZUV5Qv9z*$ zEo6Tiae)`2$?V3mMaAgeb{)aac_C)JyY$zi=5vwY2<$oTFEb1f*cwvb(z`8w5P@dI zVhAzCo2P&FqVSSWch-(hXpv?E#SAMaCMvt90|j`Ny77`aJXX02F8ee>r1PxS9{@Y; zsSXYPa!pICNvf$CfL~We&ARX-E98xsP7LRH&{qoh#)vRRG!1JtN^C&usV4DLw#jrx zx4iK*vYkZm7}fwSsDJ}B#naZfbjXvytnTy8d%PsjFdjDt@9W?W0q#dUSKb=s*V&}* zr5+kXXJ6S&z#DX^BrK3d?zviwrp^2ToP-cD3IWCvl+STYy*Z< zp)m$o38E1+!bFVw<~GgKqCK;`WgD4Eh8&~cPv(Yck^(m{^EBLIbLSVyZd|&>^BpZX z5(l=e#16hNZf`}?TlL*f`38jp9RqG7@y-M+=yN=+^UX=%YlCkzg1eHWb+VOVeZnp| zaI|sI(H+u!9w}ZA4iA{d=zk{Kxq!h+C5)|O_!2OI0M6 zgK-nXyUZ;%988|a_{fAoC=$cu&E!}Ebaqd#bJxXiGm6p7u=(2{I=BDr?h<2*#5=Sf zw)?O_hG#&qKF3>7oAB5~aXv7I|A-%pd>x2ul-W38_fvsJfBUM{CY^f|RGnmxM zC4@u6^xD#fS|_6ejv#c3Y-MTK@o}B7?a{Fr(Y#W^DzY>X3Dyyu|4gCn10_|%H!*w3 z=&xiP_(q=;_}K!ecgBT6XTbD72+Z62gPG~Loo~C$ur5f9L1|z2sQpupmY+05C8=*b znK2QvGeqd*bPQ~Lh9Ci2iNIW4AVKPKGTW@ZNB;nN3AKdX{yL*^lE*iGXV`B} zLS_E|PTfl>c^nYB$myWhYjW0k{$eDMNbESJ7T7iVZ<5Uao5Myo+<3X2P>$wN`j~&S z(DP2_RFI)^UA!{4ZkY)1=2&*M>CG2*Hpe+)VYR2Omn#a}+j-M)q~`=W18B zf7y(0x1B1lK7X+sY*O(Wegtp#{9WFl+6$8Y*@s03oWJkq#vXOT-+cY^HsUPoUcyIS zrDjFtbEZB|td|y)oO$^B87c_7xHpd^E<6^4X%rNMwQ61fI@vAi^%Oz#lmY49<+gb1 z^cB0zfnmPHLau^5Cr7iM(2ju zL!i9>?Lb7f!lF=?MaHbc@s!u1^lM$|Vs=+ui@X=B18Q7uPRV_*kzvDrR6PL(x$o^hq=P7XI239xY#}J(i?lRHYAOH#%=GB-)PI;7j=JhRip)Xdx!0|F z2EEpF9oIV2B&0)*PNsBN=ij{j;*3X2%aj1;^W!%KGL#=2jgvgL&>QBGw}|bK@(@d4;9N9wKEW<4Ym*4M>7Jib?aNLk|5BnmJ~M+S%qQZZ?m zmgPM$qXp+GM4Z<_v4K?c%v4(7Nl-TfQb@>(!ly5Qah{NWid%J@I(nxjWDi<#AOx4d z9yAIn$HQWxSIZzA%ipRKjzM=}*+4@r=;6I2Ep|-%)p+ApQQ=5Q% z&orBb@vqfx`iB9+X1;L4^0&{uvRb9<}~VL_eI|yfkah zyS}{d?&s`kSvp{Dbm%}2xE8%;q8<5Lb6f}Xz~7>EiH4okUxjJ&MbRNl=dGB>P|eOd z)t+AWrUh>F_@t!Xrj@ExphwrxT1?N=8%=9c5PiU^pFgih{XWz|v=E`tC(K3k3MN1g zTB*98rC%a~H;8^~Cg_IfW*zrT4?o@nrW^BQ4c~f=CE=bj7=+p>93uwavN0k*Ouc%6naFoVkQbiB9vORZ$^QVa07m9 zPy&o9^=&S3AeK(vB(+Lp??J5;k)UcQTl1Y{1>RW)OH4HlFX9A5Ld5 zpjI8cBO_Fd(yCuXMDS|N5IXQA?Z-Sz;im1aR*1%mh?Ow7;}2#IXgVdkU(%z9%p`#wMc2 zYOgq&;dsiNFc($AjVM{5xfoiCJ=*iiEm>tWPpQt1fSX$}Bq7c3v$RX@3jj4Bxi zcp6T?<74;2wh#yHudb5`m4lQG!fDA8f+VqNW^c?2Y`p+o4FHYgE`ZX`LBqCK5~UNv z|8)y@*9{jN(7C3HBj6=JuPLi2@Pn>wG4(i^+o-Ya?kY*;`Ylrb;apFQ0z0@p#w|u7 zVsFxu9jxjcBN>aPkz=mG+?6q_pw)GQuR8>RdBegmxdA`?5xr?-GdscSk|sKhw$9C@ z(b5@&05!JYrX4ZDAPAkr1-3=dzQAiLf5#Rr2Q^BDIOCHOcc#6Hb1h#v2|u0v?g%(U~`#h(&)s=-Axu5GaoR zysM>&oG=XdU~!88c4hF4AL;Pw9@piWUN|~)zzB-K2h;bigBFJuT+-T0m8iHh@{|{$ zPm^9cvgawO6ha0WD1&x?Oxa?8Urc}E$z;Xi;_An=q4TQgOb6bNa=ki7bE zaX3L?WWWq1oFhyM(!L)4B{FMq#1l-xJ2$U$CkhUYWa`jorY7AXnq$l_39>x6DS~nu zndZEg6_~PhjY-4NfRohj3#u4gGWA8}j{vm$lTqZhB-~nDx{9gv>j2Az5>x6`yrL?@0sSV%qp))3Q$XY4 zy=kf5cs~C?Nj(qyx z>?pO9tA3~Pu?Rv><-WOq33kHjFOqL*>+TLPaup%f+o)<)Zy?4py>9V^NeN7*eWkPH z)AQ=TRZRbv!SzWBp_?%g&I_DT+6z>)%Xwi_R>i3xUH0Ng#`_%U42$fXBRSkZ-rfMbGB2y<;4C+l zQMh}8Q@Y&e1WVO(RWv0+m9W-sirQuJ$z(xOgJ_ZT1Tj6OPw_)^psU z(rndV<(If3KLUz#8o3AonYw)t1R*=l!u?62q4zzDxWZ3$0+FdgUOUct5U4X|2pL{cvJ2-><9OmO!f>+>rVC=>lcL*(+xF#S>oj~JSLCe)!o0$?yWwt zDG3o6H8smV9{4Rs7{^}lKp^A#)vBZ);%2${@S>Z}fr|>7*(L13n+H}W9@Op*7`6)9z_qmM96MQGe z`FIs?*wkrsRzLcQSgrEuYWZ>_qVt^@C}aKwpQ|IMa(vy(b9K+l`7(n*>1qkr>~vF$ zYp$6!mR8esG%R~tq3?LI+=nx^cHHjSy!+|PS@xyEo(klfFs>MrQ#3rDc*4J1x=;1W z8PKE7&_EYpL|$sO&v>ydPp&&RDks9L2{A_AK_{^6X9Q`DFO0-pF?l>~g3)%@}4<^MYtzVlw zy|s-Y!qK3_FKiUKIOJQbh)$4kgY97<(GAwvf&K$fp^XYQ6Nd?5g!97_Q$2VZ8R^x! zMe#g}cmA<^HK%^_pkx;*J3)#{b^mej`vwPS6)AykmF;){m<;cXaWzniQ8hohO978s zy$$VBUdAxNBo6{=FK&3UvLme>Pg&79c`_KiX`@>YM^T$FL=P+~7&95UA4V9&uY*t` zKu<}-ljJ7cUCkW|p3?BfFX;~eme;rknT$B3kQke;^?Tr+(ts#>0LTj=O#ZD8y|*4N z#k|ysThT%_(fz!drlxifZ#@l4!y69W#q=3&1T2J{9IZuX58eY!;RsN*J03}K6OFE> zKfaWd#m2baPT%d)_uOT`@@e#a`n(Rn*sp|Vm$2tt!sX{^C5V{8lt6lSb}$!?Pwk3e zc9~GL+9lk4Nk=r4&D(W?WROlXaXR<_wzD;wE zftAjl+ck(EDLGufO2EjT_#NH;n-hU(o5X{V#S_iqDj@`LxMl7(ynW~MHNxl!BrP7% zDmC%ixI$j2k>f%NgpWgQsMlikB znkd-l==9W!sRWO`QKZjykI)o0!iJQz! zj4T^1threZUiXX)WfLYA`5an}F!itI&&*HPx6YHEbCW?x!gJ-|6ko(!fHt_%Vh4^L zBPU5V=2H&Q@Xnr|tW_GJWX1top&`HvN@uxYp@(5&&ZQT9(k;igSiVAZy`Oku$;`cc zES5+s87H9N$({KX4R1o05q+zB?%%?@tBy>Qkx{_3x@YrWq7I*BbaD>wl9oWIBaG1%s06b+5Ar1`qP4a}JcS#71OTc0FI?(huJQp?my|u_Rb7UINT$R&|S}QCkVr)+riJu-P2%hj{rrM9u={g@w>M z(mnN*YwoF5La zxs7HtTdl562y7Dw^aFgPr{Ur%9x@xf2|RfiW6&N9-OHdX5~yB#64A5{K0UMsradiW zXM6o(VD%6-bf_noLWaOJmnKWD^yFhEW*Gc2m!a1*g=Lv>$xI&7z*7k1=$8l(y7^@E zb;1TB4&GS#1vsB9ygxzQK<0I`2FGpE*aBk=62FWT*JG;;fbPX(;V2yn;yiWhfH(&k zCZx+AJ@oRUL{VZ?NDw;5Bu;QlgJ5MPeHaP$Nb>wp2qeJi_%NhInfnWi<}HhCsSo9{ z>vep^e*g~xPK*?AJtX9?FBoY^>m~q|tXmJia7;g3;FYAs2 zx4OC%(s^CZpCu`VkVE!`+e`}1%EjJHc?pVn#v)6ftnRPBLRfX1{Ht-gu*j~L0l^jB z`-fW0rz}b9)SLSQsPdU`p9AmcSxU=ufecg|(^<2yU0R&UnuKtIbByg0(e_ZY_KAs8dpKixtNy)833;LfM|8_wqS`1?%d2{!Yz^(tG1#8oo z1`{Lv+_1|#I~(-51koyvsV|hChV$UddwzRR$HISBLApcj;RX%{Cp^+Zx*^e;wGo*f zi`bE~zbi2fkv6J+SqubDU|K3P`ezh*XH!p2VWT_VM3_1eKx{w|Y+;F~0+K4^4@awo zw;1%Ty*Lc<>_7PvyTx*2d}>El*x(}&wyjmL{sFVu1l7B`1R4Y(4w2mh30j+$4}*g= zx9|~!QVfaGnZ+54GSPRCLrnKT8MwLRJAKPBdHGawO#O1+o8_S`3HOo3jUI^(v24S~ z?LPRz(wn*ntONs;loUwWEifT9i%@~V8?;x3J(3%x`JE--O84wXD`Vyw=LllKr-IJ& zs4-+}#gV8j+yG)6Nr;UV#fLaP595f#M#1o!IP9g}mpf*O!SBepiBXG9ULT__MM*#u z$P+w1Q}T?6^2#_H62#dSD}tAR5J%6Nl_N}#JH;pFLGc8z4j6Id4%BNl8iNr%uIz7? zSYy!`1@UP#_s{nVvsZo~k;kUj4x$ATM$Vq7G!X;TC*#0Rkp-P|OR(K9JENx)r*tkx zhy3Pch3kGZuRP1@(`K_8{!TSWNE4l)|3X;01qqVf-y01c>(8t*sY@h2+WY9Um2=!a zPjRT#F7vFNt-P%dxi8?Rm)cq*)@WzITGwg``8$$p+h>mtT4i4$c&5EDY+90?0{WK)KQQw<-t0+>Tnhk84GZP0yjQStI zd-cc5mEXDM+cn?O1=|vuR=w|zYU{jvnWdRyeof^ONWpfbniVov5cm`-{u6n6mAg8b zO-WJNfXjSSJKiv9RHLe8Y0*1+D1U3*De2&5ZN7u0_iayqMe8?H?w#X>leBpeZoEEqlH%l=Inpoj+-e{l2xoPy}mUvwzO>2BtRI&eN-h4MA zQTeozs+vJjuXa`>psR^YsFs zZW|^Qv@3O1*(#KD(9rq?M-r{lleiU;@{sKzWNPvGAiAR?AI_5yc|>k{aGrY(PkHMlc&t6*C{hsyO=`N-+Q{cNVpR6w#1=7SF+i*&KPT3_U|{1WJ1qXV^~Y{ zM_uGD3l}}^v(Y^>QI&J*4`AM)OW!9iyVl;ktFYG21$hgaSlO0Xe!H(X&V6WmT%LS4 z)Iq~4Pg2$T$WL~aE8q6toNay-KTaq#FK9~tS&;UGyeekyGwsw zhCZtu{bVatRCu?6%P{T$@wi>X3N(^jDpW9Ac}16 zd#rV-Xc)+POW&+m(jE?U!dH6lx7>Te_i@c>6&{&$hORD8crT5bQ4Mug^=Y_2m{~pL zP!cTselgzq-JReo-u@{eEBxX@udA)qUDY|{$F>b*%NB;rJrj?J zJ;!C@Ywvm9^}1#6bcd&XRHMzY{9#dC?rBBtn=t1g!4#0k=MIww+s9S{HR;~>ZGE~l z`dygKifs0pblbC zU9t~1yj;KGk#F}wMA^n$eNf3Q6(1wF?kj-@N=LpAFf& zlz1nwt-z)8YFeyw9#3M&lfmw?@8hjcsT_QzzYb+@J?a-T9izX$Y?hfHm;GH4)s|!9 zNm8h}wbAKaTp4uRNhH8cf~m9Q&i7N?IMuNB%fR-5>W{(En%4A2+gOJx^|ky<2T1N#sE zlxe-P`tZS;+TrvyH(L9VcEEk#xcQTI+Zn$0P#5jmU+}@KiZj(`*2{CN;74n%S#CLd zw_>Z>W@qEy;frI$zWw%5fl;;BUG!%$k*)Rm($LrSPG?4Kx0YN7?zc%-Z5N*({|%L# z8QM7--0k1b`s~#C3VBwV#tNMn*zPYhKU;6fdDh~dZ!Q(2Pu5gd{cKm9|7IvB`SptV z=#v7!i}It6k1n}nFr!y(2O=CluWscB=G)5LvGjm(_Hpi>HNQHLkxMkopQ>Z3#^>St zTaq%XhsXTRWL@U4D}~q=rVqXN`_So31-sVeeb1f77!asMs>*cz03DdiU4T5C3|bF|o-u{l`NRm$!JF zD!&CE^=kC)*3UjwT&-&3({k1&dDTfhx9IWbj)KP!kKM_X%EE-ftDw)V>g7_u5S_5g zXY*>_#Mb_bebra>Yee($o0b!PA&Rcf+Dm8XHE0plu0s7#{hSMEI~&rNHTOz(SK>ky ziU@0KKd*S_$;MORg6IJ^NVRuhC70}&;P(ENZrr_x&?gl&O4+gtm)4dp{BTKBQyp^x zof5>PJPcI4AjLqD?j9cqkzemLmjo{)vR%AYXB61I#kiDqL!hv};qqWdq=iLw;7L20 ztMjt*wY$%n6~LiOqKo$>KILxhg5HjQf?C0<&UhEX+%5yR&6)P&IRq5epcpoyEelr_}#6Ke0Skf-X+URp+EfzCcWC>d5@O{7u|$- zzx|5LKcjKtb#+K9yn3k9aQ$PVn{R<-q0A|n5s=g*Lv*P9eD@o7V2#a6h<5hAhHtTc zrbGEa=8;OX8pBMhYTL@rP;;|*{ZoivIXo_pGY}7rGDgAbD}uNrvme)o{s6wO&Y%A3 zs^wO`!s*q~P`Kv}D}MudL(PU*7uQF26qb6re6s8_8`$=T7g9N$IDL`M6-z6xJx7?Z#KEURv2&aHNZJ&jW}33+to%}x5gcgub3s|T$znLz~pYM3`)ti&MRp5ho413bGhH!p^M_fEgo9fh%XCD=X=#ADt zYAh^hGAJNqQYa-y(cj_yF&X}MBN|D=%A}$f+o3IGkApu7JH%%g_>Ay93922of24LK zmAmF+rhVn5q%`WKu@wvLS{`ThS2Gdnvj?N+k9(Avdn{<%r?LVb!0@vl{$EEfaPJ6- zu!YrcKNJHcIWb()>ap*(xCSTLgV%AVNfV_r+&zJTNZnn80%m+iON^fcr>qON;v=0m z!TbA6sB7Tq6{CZ$SWT%xM!nYq)hNePccUnjHUIFV%##r%S5cxlNMs)SfFCFd)}qx+ zm$)6K$?;SZ+cA;VOnkvc3S))H63#DxmRnJ4S_r1w?3y0KV~7kb)rny1odowS6eBw8 zbfOT#vvDJG9>a%Ty`5{y544CSH-ssz>;qA86p#2it0U7ij+4Qlw4t8vgC=}QxDEy0 zI=jW$5CsZ&))kdu2I120mWo02vjdS4mk(SsVf1S{M z+=0%#w4_1&9=f%461W~t@FJx|rR~9yk}*(C)85MyHZ_^apiGT383+la zXvGDqag5tz|ut-IFm3baalQUBDMY zn5lQ>=!fikOs_9nI9Mz$Y8|j8Lfy(2k6-6*e5!nqId$kT>KsvIe*DLbJMT1kbCRv$ z{nUJ}!5}%x(di!&f(fJt93%Jz==MyZxcn#t6d79}+89Wf!{ZhMTY*j!TC?rk^#QmI zEdYD7H1|RHf@gqNdEfZ7o+c1iz8*OlmNr}%GBGi)$K`(UW@jwE^bX#I5~Bv81Wb3! zM^I^{#mojU0mN`5+O{rrckb>v&deDxxM|H>UA$T}_q0|5JPA*CDZOaKV6Py&TWx6f zYlL(WlV)gGO)aTb)?bh3bsb`efR!6AhApf|k)uvhM&!I~q2cgEz3xK@nKH8w)&WbP z5&cR)o?0^_U9;NFE5LWssx=Yh-0d-ifxrNQ$XRj*wV6zFT^S8H~g^SQD58y+Mebj2a=3 zqNA;1$_#kFc!mvQ4-7gQrXzhYaz>=l9nn!%I-0Z4U-!_zyLNtE;Ksxpu}G$TX+pt~ zotHX~VQ^`zj0R$uMtou?88^n=4#Drw```iyZGQl4AOJm_XC+VK6Q04q>GGcp-yZ)`X#>~E#og{IxGy*AyA!dU5MDuru zR5W5{ChC+=xpGLL zi`F`&xfnO>fMB+EbTWz@48`U=N3?l<7{#)KC_~*i_GWl25a)013?>Fefq!2oAm!kj zYy`jkNhL@uaXx%<4Ps8|V$AfQW;#k1zyV=85^6l92BUL3jpim$3|7|xxxu8wB=jH@ z_1)atdt*-79EK4#C>uMt;bD_^P~QgItqc0Q(i$0qHcoFZ!;? zCPp0ydf_24VmnmnQ#+(eE!k3Jy1x_O{YFE*i!{Q*?=2*Rv7 zHpZuquSO9nayz>iU{XL#jPMdpGU3V$S~x;CO~;Y9fS&eg*Y>g4 zAAp_Y$I^rM2Fy%ssm0gsVPb9Q?Ev}L&$djK`o!3N>)?y~u2vKEPBKbiYfwV{`HQ&$Ql3}G&T`2gV7CUH>;cC{ND-x|Es4xklm}kaRc3~eqGMG95(2@$MTqZT8H{tjw46h zN*s_CiZ5fEx@%7vDC~L}J^Cf^P#eb*W8Y9xN$3skE2AbSoYSwuWscnxuq)?dh1W%~ zx;fiVo?(Wcp8J_o(W5Xbr=BbyqiuigQJ+Om;Q8+9pgg^$l?Tdj8CEXK9Q22s*2;o{9_xYqI!9hXzHVC?Diy2IbYD&1>|8-*I`y^@lakMnSU}= z)Aj*ztp9iO)Lr!=5L|c8B=jfZWTVPzlkH0(RJ;843sWf%k8~U2H zY5G60k>tm$l65BF zXlSC)+qKSx{S-yp`IlK_vsqTSejaGDvht|s#B@BZb`JG*&{r3-xpKwa0NA zHP(`G3Y9=>v)2_5&!3Q%=MNF$jm7A#kMy>*J(n0)y5U8ZH4O9FF6qCM%yugd(h%N- z@kPEASNl1s(lJcek1fo&nKAaJMK-^_+Y~z$@BS)RF_RpX{oV$s_3?GxgI~_%U>W$k zBAk(@t@QKO?Dw7~{sJnH9GZCAxz)G49p4#3|PlF zsPYa9r8e*IL2mWcJEJb8Dt)?D&<%vz<60<>2GMYAwROZwvG)TU`fBKw|HRg4pPup5 zi8?{l=sCm*mJ8_#2j~5plgoA0-71nKX+(-f=RP`1 z4Hm~^t}^&744BqmbS5FQS%gIpWigH1?c#r=OkOUgMdd9(Ka9gM{TPRMtK8XJFD@QG zs9)F8#|~hxPGYq4{P@^Lr^o2DiMc)E{hB+406w0$Y?p0mf^9uwH6Tv%tcURp$%l>T zKFabktnA7pQ2J!?b3kn`1(b%OcGd@bpl~rg0pp#?vj5=Xu+`$5nr$wxL2YUKsmm3W zmT|6|=WTMTZE|L4OyjMuTI`<3*`I==xLc{XSH}qH*QLQxS!i@jf(TMaz`s7ePSZe# zvKoDF7exs~_eo2t-sL4G_WWK8#UMwW!w_+N%ZrH?YggH`XAVD*pfL$byVnt&j#(I* zBzDiUeUhyiYoKn`GcZ2+qjg1EeEl{n86TM^#WpcuyT=xA2!-gdvX9U`tar*>GA`;R zo*&LQy(veW+DpsA?>lwRGOr;Clb%{~S<##f_qq7C$mMJc26j-$O$Q-Q8An zq^VgaRrX7|GGW3mjKQ!i;lZVAVFO}VDXqoM3O#k>ze5Y)itoUxedc>tyi1a%#Y3+c z7oK@jlzq&sN=G3EwO|mLk!)gE6i0N`*QPwo?b8t~qyZ@;G=r(x^=t3x zxOvtb?Y!TNXXV%W;fXa$CjQ5Pa<%AF?7fd}&cmG6JM32qhRt2D@H-2#?6yQhbZsO+}nh^KCmQXd^b!?*ea zq$^|?(y!T+5*5tPC%XhM3b!Jh{pyn0Dy(hXmH(5TUOqX|IxrX*09;N! z9^)Qhr+ZHcbzz>M6W0A=zG<Xmf07j=RO&&s`6!r zjY?HnR`yn;6t3Bn-SD+=Iu!vJ^)|Uv{c_DDK(p5_gb@8x@BSDFG#tEh(mwdn9qq@8 zMP@E%;Qeo3B~B+BRT`I%et4H;J%2MD$2Z?1nE(CFerLQ%u@cTQPw~#gbcufEs}bXG z;>R|2=4vu+zJG45I1`X5r|Dg}V5=BGP=CBV{=Kla(Z-MaHun$p&qZqk*P0d5&WhW7 zu=gx^bj(@-)RB|!;N#iZ^3j6wqxLBnzDsP@N8zSZsEP_U$ERj1pBi_Zff&j^GW#Ka z%Brjb%5y)HZ0BqC=1xcw?EQt=CTv^AX}0e?mxtlUd72RO!PVB^;_u(=GaEURkl#k! zUKy*9Thi1kX|&z6tLe-&uUNul+TFKXdR495vhefczJpSx0>sbc++yKvX4DeCdJfp- z??RnVykC1Lb$NTp;O&z|f%YP}6VgEWd-V>&ZK$iP=jFW-+92ocT7Ka=pm zI!x!)?P^OOd5`X24&#FJINR!*qobmpX~1)fzT!rWcFA`VTH%rH_Agd9d?qT;5`|Xf zJ!z&J=P!BOdh{k3{O%lzp3AJ9I1g2{As`w{K56)JDi$hMDx>@F%-Fx9$5547To)W(V+Mif34fe91 zgo$x2Hm41$8NoYNgdbE5RsFPAcdWXWBc#IKpR{vrNgZ;t+^+nq%j3B=2hNpvn_D$; zCj;GB!AXINyJB~8s_47O8Wn?2tXOL4QDqGzDd&B^;5Yo4`eVs7qDxi6WuU0`T8+jD<@;Y& z*#Ku_f=+O?j)>%sig_+J^(j@)~YvrXDl^*bv z!H`rnh~Gu&h$l9PNsdJA9wGI{@TY(Rn?(o%B$_)4*L<~c)1cIO-MAdl!H?Ve(b2@D z_=Qjr7a;i8T1}V*ax;FNZR%i%oTx>{9H6wwGx)+?+=vkJ9Ayz2PL*&;p8!U!aQAEw zXkc6_elFny(n{H4Q2LRT`E_y}+26-Q1ihJl(p+8Y3$TqS&D1jF2AWiw)MK<6kX0I^Vd-m4k&*By9)cNzCi!Wg+pjh({dofw3t z7MOcDIA)&^xE#g5pf5LoJ$JHDOz-#>-jUsp21lT<`Yw~6t~6}Fen}f@QJa;fWJ&=9P6(?*LpFgQg+ zkCcj_nR_^P)SAD)GMwyJ$TLofQF4wpTwUDRR=cFRJqmpjx4FH8b1}w8Q+mY0q*IWlWW|Q(Sr8Nc#7^uE0ZR(`gnJU8VNLM>ra}Ei0`)*e==oev%qp{wC^D zkoBl7*Q?v3ITS@qIS0^Ww^z7zp6!m!4VtYFb%pxgW;syWs>%|=|E?otsyOpJ?btC8 zVl>E9OS&}lIH&Jc>F_y1cx?eAkdGG}^A%4ZBnR6%GR{p!)OH}UtVmp_W_eHsZ$nBYDUS|?z9~lT1 zc=FmiUr4$yVgpHXu%+wQ+B{vpNy>|ky^h#y^AKK0< zs;Thp@_>SZ0*ZjryFd_--g^%{1d!0AO9@DqZlU)Qx^zMay@jTLO7A71hN5&rlPXmw z|8Kszn6+l^W^T?!Zq8b#ygBcF_WtdSFx11~@!o*|XmoYYz?otN|8x6{8vra8Tf_Pt z3FNcPijl(5`@A9~T&FW!AB0$L#gCgfdNjU>Z~PGu5Oc|wp647v6Wb(t@YH#7yShjj zD*X~j8fZZ~1E6wBrv5!NeZDd4;T|EIw(3sQL%15 z;{OP=t>$8$Hg}IaX+FQa48|+t)i@7VN(GVS*}22I%ZJ+35;E?x7`yG442YMa+e{=uP@3Q!g#&Cqrw4vH0WbOp54CESIS@pku!QZ;?`CXj( z%dzLESLkOPZIP6r6RW+>Rz6cnzs^u&fC}Hti3qGU@g6KjjM~sf7tDjx2_RFMQqkpk zxdV)L7|Ung)f3*0|B6nKox)(NTT`(KlJh&}u22&YZA57V+iU7_>SPI&cxk_Rt%ho( z$<5pOkZ|b;*>66?!j^7)d3CGGuoX!{=evk3+lH)U?27@mXAM(%-;%X@m?tY=eDQ3`M6 z&W}5K6Yg*Q^4vM<=#WCyh)bSYt+h>Hk2?Dn0+&~@Yv%A}?8K_IS@kOQjw$(qa zb=)j>N}tkdJiQ^Hz3@!5)Ea6l?jS>eiZ86oEfX$iN^?GUDewkE8K=(CMn= z|4l&pfBpOObma4!E4;|O(#aOdswfkGzcY#jXra`6zS1g}aP1~Iz|?Zm*Lpk`XuWhW z$Fh{r^+Y>P|1NgmKwcv$l9T^jL1FEtUZLGS&foL=&Azy*9N~9@ zZawsv`5QS0D^1Kion!ar9 z+I-?2QOMJ6!HeCkg!w^!kx;m07>;~8l;Yca*@Kz_wxCq;tuo2|sRG>OdTL@y1NqngFdl4TTdVQMsM+pakHqty z0p0QB8-0)3S-i~nq{T@X^Hq@$grOqn z7;I3)X-N|p=i+>Ic@4J>gH@0AYn?PJw-vCZj{NomWErzMBYWh@xe z=yO~7Q5^-)wkH#CKh^S)ZX#hw5q~hr;6uzNEJYt&_;)uFFvAIlhdE3OGnlF|#2w)k z~>!q8{`(S)h-*XF-I>!@QIuA#@fSG& zj``wTuwZkzYuU5cgtB&fj`WKhm3v7XK`F~CxqqJaD3NM*L}uR9;@zA`XT|ntmV#mC zRQV4#eb(Tv-B-p=!JTpQ(H)Gt1=ey_#=_~9mPtYZk8_xhS3(skSGV29Zr*;}|M zpo7*v=Lubylw+Vs(nz-UFkPB~t>$pN!`Et1MGxz(o0_qSg^QW#3_um{KMbwe*0;W; zFjI60BW`Ms&E{{*^L;9{`4X2lg;-Ok9=hvmk&7fXX8WD^Egd_{gOYX-KoR16ZS%+~ ziBy0N7e;F+uFOZP7Ruw=FYGWhli_6d648IqV8d2Z^O_hhk z78)sgP2n3;*Obla@7(LkKELB$+>{+u8Ic5Chp8bMMO|fY^S%D6rg4??8}GoRo6@!3 zk1C7w(zLb}wNBX#{6%gb)1vQt3fz07_SMn8&LZ|K?F~g$aVE?+N*qVxqnal-AeEX< zTv2i;(6B+Idef*_ZOT)uW9@zu4Fgs?52-vRUqM7y#IQ9NB%ZwaO3!RN9FW(%I6OUM z{Q3(Kxq%Rwz5hmw9%PhjaInc`B0=i~BCoYlQZpdm0YhLzFB1pZEOXdb?Y&Jq@P z8VU5ztDFz~khwGM0#!QEE$kaMn#HVDNp4ixJI$J{%2cje5!pUTr9OQ9s$Dx9q^YtJv>r zuE}y@!$y^+KBpRG=1P69*It&uYOpE~jdTUAHR7AC4w)Elj85-w_CBKhmytQ{dlvEN za(>wbMz=YBR4Ff@g|#$stDu`vuO#`6(Zm(R`Q`97gm!_5F&0NlO^vMwKhTDnHl!Na zrW)08)8=J2cEvJ1P!FuYG)&A`#A&CcBBg_Sz?qE^!5rflcL6ZHC- zitqh^LQun$R)64*Nr!`_*@)Rc0-h;n-wJhGv{{{v<13W40u-Xc zjDIXrL&K)k(wwdLT7oKIk+)|68sfmZ z()scqLDh$Qqj&Ch69b|)84EIMZ~5)DYKJO^PZpJvnr8v2$} znz-?lN8mXdvimn}EsO8^R;1&!D~O(}*9QQD^QrMd6ycNxYo&YHol!T^>ARlt&M!44>tYTsHT|HWHgAo zx|fHVtyQ3!!pLlc%Mf#<$vzC(}Fbk~cR(p*g*$eiw051=VA&e2n{8y<}pmMd>v; zc^8ya#5OZv?=8rUES0s`_>61g=(BYTbdqnRCRq{$gfTIX3moR~Mmf$1c2$k!7@>^R z7p0wO`$tLyYh`cDDg_+h4Q6KUQeRcl5^6_rAz+iHJfs2l4b26}1+YkHPu_&k=vfsi zOBho^(WO}q;v{A^*;4b9^oPwMqiB=S+k3lwo+#&`2C@EbFHO|ffqw+UsM^cUH8*EF z1A(7&A(ifKGXC<1eBRBX1FL_JF0Z5e)WxsXW31cM*s23)QNeX@0X zA#dAlH!iauT^Lfd)3vo0lh?*M=LW6oTnzL+>G9#NLwEIeZQTe-?8c_edA(yvTDqyH zs0oZ1y%lFJ5ZsE%J!kcMjy-fWUkQs89jNQXhnJFi@RGq!%t!U`6~ho|sO#UZZ%<;- zu5(F3D@7}43)7?~%Dm>EC$66ESbxd#yYKyEs0dFE51*bLhI%5R5W^?fCy+mL)-I+t2#J zUBmVA`l2^5;v0L<@_HO}F7(c0j(sf1j83ZVzNx#XkOVK-l|FHU;(dU7qW zLB9oiYX|nnx~XWtGo9|P=zYOb0VL%jKUsRLlq*o&dNgyrC1r@q*Jlo5vHUC1-7(JX z8kgeX?|P$A!{ad}dB@$Kb}vj~>ob_j!|uGfRiaLzAiI}+x}EvYtth%He>v;8jecS7 z>SHhpjdxk}y88o8uD^I}ZLN%dHl?0hzHOsz?Wk>@RmiJXR9u8$SMn0}h-+J9_IHzn zQ!oKg5ci+@hpL(#<~2)J&YK=iE8^!fs*_!BA)VRq(c03qP6q!*DinCy`l+q~}p^V*f)g z(_amjZA<_rH0t(zYb7CH^{JVJCZEzTMRz&M+O>@&bB`jwdrPKvE#GdPlUzaOUO#Rs zn(_ZMiT%SYw9h=pp4BF)|DR{`cFFrIUE)6(^5tGAi1+fZEVZnJjhAuZJUn^|%)JP^ z!t~zOb06LHTztind_i&E+eJHuc+DTWre~EG9DN`z(c`Hs*y53Nd~@BBym*51=1*@+~&BHttKhqmm%V-B%8pqZ7S^OY9y79uQVluhI;vn`$wcXD~w`>reh z=JIMa+&b_3+3kwRC9SQ^h4bw2ElK!CU$li$NHZ4i4k_@xi6RKxxB2;L`OgVU?n?7g zTTi{-3z8M0Fp1^$qoZz0wEMOHB_5)8_pf+e{n~{2r;fJnE*ZQ#44ZJtkiWTl5ma4w z$)ek_)_L3Zj77wSeBa&w zw59a~yYIQp-^_KM=ZNAM(Qks?H#FVNlZgy2rye*N)!;@cjCs-K|7e{;KQjlIEdHXKAc@df_V+m{GyU|)279u*=e@y=JB$7t12l|SWkQ8#1rRQ zQ|D~Q1jE`HD=#@f3e6yT#a-k$W5iKWK=N5Edc2iN%#_3BzV4zmhchJ2ugK6vDz#p( z2t=nEn`dHVQ1o&=`p94}Dk0aci+ARglHsK60e2o=G1KGam3`8U_igR#90?(Pp!`$q z>^RgyHdO`9y{T*Pi%LaDm4{#vJ!hm4vnJdC8L8?c`;VYLP^Zm{ZOYk@d&WidD!A5h znKGDpr{z&l^%*DA7prU6J3pK*+(bB2UyKf>?o}1rZ5AwW#La(_+N7J;y>H0}m~`aq4aXKa zwgyn0((kq8{$WWF<{KG>zx>#`uO5PA9G5S|g(lzTUuY=~(S_2wLa-H^u_G$`PfVtg zd13(kI>o9E;{n-*T%xDar4evp#?0A~pwG_R6&r3liWM6b zH^iqOZ-r~g=RhHGvB3BMx1tpfGRVE=D4{a0m!-19F8cgGdVUKgLY-%y`L<+xLS=`e zeG%q{DhaI%AF-Y&yukFvfDD+b1bol>QE2j@2|L<4JX$nkrM%#aprXYlw5CQhH}Ozc zKhWX@f$xK~?mqJT$=5@X;3!C$Gg=-fmE9eOw6_=(hV^XJl@C@MW}-y|HhK1VwfR*? zMCrgdjLFqZ*<5~PM(vx359qR+D`@A<%F1F&P|$doCX1fHhe;Rek%(3455mba_C?qH zvg1ujwMvc%&~SsJR$98q69eg-biq>^hpPmls*9_|bd-6aXhwFFX6mZ!&sPWT#9t3P znt$Tm1E^bUNaWA+V2|i|lDI5zQ%;V#=+N#Pf_J{{3K}+G<~U+D&;+J>jy4UB zWQ~i^O)@ayOC+++3k zyXv;^;n7BuX{)B})Z?^q!?o#UW5Zb3c0wdGODP>}jh8AHa?=8T0GU{zf>*l$AB88v zd4b|UP>L6vSACFZJ(WKwK8PG~O<9t(J*qurNKYF)O#iM;K)j*2EeDMRk!9QXIU_b3 zl}3E~?8<}0t?2v(Qc)VJzF%hudnp(kmgzcFg7{`yqYTFIQrt_8Vhz{x>1`?(ElA2f z6+$;gk7^yB4Pq6$b(taBfKM}sD~(^+^nC8_X|7Cgga}e1F9q2Rn5zc-&*el)&@-^| z{saof_M*6_Ju%FMJ4TvXJkjRBu&VapsSEUIJ6*O|O||~-BRKCARB}itC1asX7cuK> zmQ!yPxjLN%2*}CI0*KKyW!F~#{SxR?>uKidd8@w&$QZ3_LBD*z;uda+Oi&)1pVbx1 z)c`;S3q<1Mo6mu<@lDfKQK??jgcVbb?)Ejt1y!I|#b|rYDnm%dH8NxE!04y)M>LAJ z-e$DN^-zv$t8_46b{&ra?z|r3pDhTO&SdhPH37FUdAfiWJzW5h7*Gs%@a8SuUrAY! zch2YwX`gDk8H=^mJBHrcN0q(_QuriX7oR984L67VVvBa>D-1-=X8X5I>q3NBteX52 zUn%cWlG64T7b=Ms>K#;|#QoBZn??pvQvkI0gMOR_@=u5h50jbh0)ezfFxSL0dyYMNc;VCa3{N>EdrTEo-#dq>H$$jfE7 z;HA%~Cz>KAF!T?#dO^=eWY&LaGbGiMwPW* zi`36QKg?;Y=@+ugj(DWoUL~$2TUF~xMS=OUo9nfpFbDc4`kNNr%C>FH`QM7W#6OAo z=(H&&@VB0s2&4G~?9#RuW}!w$wQFBMs4Y-gBu{%l>2!{t#-IV$fQj`$wd3NT>L=~8 zsS>2_a|=ZI@5ePfvn=R<8;bE8Ap|BaJ{_8lfu51nA|X{DH>K)|9TP8^DbB6WwnZjxm-h|o{?_? z^l~%o#{Ck~7=Al|?J+nS#VO|`OwkY6LUDI#vm%?&%+Giv)OtKhfmEJZRKM4+u6uHn zAF&Zg0-59&C^OD9sNSqvcG~=Wo!fZkf?$@(UO;6tMf1*waoKOJ-%qtI>Nd4K!hl+g zHw61=J)IQZl^+r3*cL_Zpi!v`!5GYO* z_Ru-0DRrkQzBbisgZ&}EjSe-kWTh${{O0W{JD<^ri&3?DIM$7=WmV5pmzs+c4lw#U zhIC@C=}bB-3Da&81bJDtgM4S67dyGQD~A{}rjdwS`Np@IjACe=&zw|o#-YJeOA@;% zdUFb`_e1tv#}?!=_K6QpQ{JhW#??Nhmw+|M7wTu{TMfP4X*&q-1-z)LE(ugqLeAhC zPx|bUVg^(sPNV4~1EV6m8(Zwcx1I(tmQ32aua1q1PO0CxI}Jg?Dg%FI^9mRtbBYA{ zHby?4Hs1kNP+Jrp*!l~ZaM19ySLmwO8-LJ`|D~c8YGRqQ8uCRcifSUbx-3+nGr8;8 z^x_x8>G%!=ok@aviKA0Peie>HJxs>MhyJ)>&ux-zFV~{z>ojcva5y_QCZoJ&Adm;a zecG^ah54~4XJ=5c2@rhRnv`SjghXw%x~9uTox|IS*#<_tjQpr+%MXmOux`@pPK4QK zG`|?fg2Px@>j=V-+?&i#hs@o&>USfnL$feg`iZRaNb&1oidn#$5I3WoY`KL>@9D=| z8QezBkCp@a?cmYBEAIPAn+iQ9I zoi|j|%d`7jRDCes@-{VEYVPKI_dOSM@H>okH7H$ZfpJ3;!n8ZpA_-x|<8{Nb`^-q% zx;*jaC*PO9vcUsq*{rgUl85_RRMG`;z3z0P&k_f=UHDY;Oq;^CBSx1wxZi}nrq9kj z!@={7QUD3y6UQz`x-@TZ3ig~+mq?FnqjWM&M5J7Jdw6U~%CCCzp4MZ-XW`gP^wVVF zq^Pf`5_%7WREfzVSWS{a%3E@OP0vuHl)gKG+eYv_77@{tl^LZhc0?>I~rKaPz z`JC}RekBFkem;o+QJuv7_M~;t^Cy3ovE+146>3yE09PDNZb%RD+OWTzV2;y^(oGJZ z$b!zxW7frhiPo{LM+F5;Y(jB7dUxx0pKgl{-g$9hGbagAAn_Mjrg={RdFnPv2T5U1j({hEJL3qsV}-q2?;|4|(mjueiW8WO+o+*p8+xImLtqwplc}{us$}G{(H%M} zD>CY{*UKW0+3u})GVfS;OJbI%Yo4~L<0bNtO~_ElYYjf<=uDyQC}OwB<>x8U>*qaO zptKw|MprBESglruf8zW`P>W010MfC*SsIbu`BWsJ@l_UkuZoZzsWE8-%R_bNGP(!n zZq1QXutc%H+MOR(Zr>ro`XL)Po-JXg3I(_4T{qvmZbfVbf6zOZ^7b=& zD^o>cp`-xF49Zm!|HbtY&a2ABi|5hxNsih5#FC44vpD}15gq0)$}n@jnTcF*ZVDGi zLrZw?7Ts6GqipfBDJp!~h&{!`yPA_kd`M-!CA_8`H?up|K4bhJ8@_kzTAYak0N?un z=Ld2kfn2Jo9uX_FMqgzIX1)2aIY2ic>I|XTY<7yg3>w{Un^q&bW16u^h}g#jfs!G(&cf zF}|wb{{4h11^js~imuR3j5fdQ(Yixv72=!9GGF4-G(=;n!*bv(jG?{c9^1s5Q%Nb4 z=Vn8wex77Dbcso$gLoXXS}1}oT30k;JOS{wP&*kX_hroBDg(}4q`~-V{Sqra-FWUj zI*^u=NXioRhC zJRA_HM&W$y}w7c9dbZv`o!_=jAv^_>4)Ql^#(St@&DPFE%N) z%IUCAy@F4_Gp38AU5MF;tYTLjG9(uJNi*PENm@hro9yqWyeSjl`fR}EOWzJmzlD}k zsr0IOKs=FMe&{$RW>lyr7;TUa(9W)mZc8wjX4|q+k+@Y86h9Z%IL$rs9;HC zFMM1wCSV?8vc^Ty{|G3LNA4flwPbkF+yy>ffWn`L*giC?Y1oQ<4}Sdkk+r^X`mH@; z`Zc^-8$a6Ic6%fHUjxzqITro@cvKU|q)eS(61I}eor&f?$S)|c&YYPme|m7Qi@N)v ziDuo&;?-GyHEDB)-g4AgH<3r@v;9$VG>_R2#KX5Qt<($U+}I)N2jdj)OXJD|Him7f{p|-psc22m^slDfgGVW$CRsKVvL{j3v>#>g*tw5H3D?;ZSoGG^$fL$z}r^-)d+?1NJCR08;EZt&xn4^PYk{+ai zI*$s)JQj&WAWqc{ZBAJlg-KM)eCf(>9J^RtA zl8xrtJ>d-Vqp~LRvcdY!C=ho2EzRZSm%izf5P2 zXwyxw=Fd%zfb@H2uX5^pS2A8qVc7PG3Te z(y1Rb4O(@Q&1BCls~zd~jmoLB&tk@TxE>>qm@|$s`fsPGl}NB@EnjlS@I?PR?dcG0 zk&}}nFJk`nqQ13Z%{*&-HH~|$HlOl57pEDBQD19=JN^}J-vRel<#PNbeQwE$D(N^$ zVWm=O@Rxh($QZ49s8M!#=W^77=sh|bCb5OsVLAoDSXaMw@IV6Z<@+~e1vNTvoy?*8xZONW>>U%T+~;s3F>W>yzzuEhx_|1bsf z4S~g3bwAmt+6Rt!IT|4i*87um9}RoplV(lFrmSK^BYrS=Q+W8tk3W?R#5Wi#o*}cn zjEw}lZ9_~f0w^(0#2z@{cN2ZE=-w%Wy<{?z;U?>`H7qW*P)Ync@|m4NUj-`@#eYQh zqUQgW+HH*=ByJtuC0fT}3!{(`_3!_ct^4m~ zqZgD~@>;-?$W0*dHSyo(vtFSZj6c)j1HwTW&oTM!-|yM<9{JtnURw$KaO2q;4p(R( z_+vMMAe1H#%KO@ZKf#A*Wo?A=yMEji)$r4k-6JfTMdY!$YmhG=bo`60LgG?yTi2v3 zi}qrwyZX!`bdWnNpKEJ?lYBo6@89g(QYn)$ubwQgM^CfYnv_i~5Lj359M8wj)pZ=S zD58?Yn|UO+*lBlTWut)^4Sqn76fEc!VOUWtf036Jw8*#hBpOPv>s#%t?89tNE{$cz z%0A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℞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 literal 0 HcmV?d00001 diff --git a/update_dialog.py b/update_dialog.py index 7309ab1..6dd38a8 100644 --- a/update_dialog.py +++ b/update_dialog.py @@ -1,80 +1,188 @@ #!/usr/bin/env python3 # -*- coding: utf-8 -*- """ -更新进度对话框 -显示下载进度、重试信息和状态提示 +现代化圆形进度条更新对话框 +展示完整更新流程:下载 → UAC授权 → 安装 → 重启 """ from PyQt5.QtWidgets import (QDialog, QVBoxLayout, QLabel, - QPushButton, QProgressBar, QHBoxLayout) -from PyQt5.QtCore import Qt -from PyQt5.QtGui import QFont + QPushButton, QHBoxLayout, QWidget) +from PyQt5.QtCore import Qt, QTimer, QPropertyAnimation, QEasingCurve, pyqtProperty +from PyQt5.QtGui import QFont, QPainter, QColor, QPen, QLinearGradient, QConicalGradient +from PyQt5.QtCore import QRectF, QPointF +import math + + +class CircularProgressBar(QWidget): + """ + 自定义圆形进度条组件 + + 特性: + - 顺时针旋转动画 + - 渐变色圆环 + - 中心显示百分比 + - 支持平滑过渡 + """ + + def __init__(self, parent=None): + super().__init__(parent) + self._value = 0 # 当前进度值(0-100) + self._max_value = 100 + self._text = "0%" + self.setMinimumSize(200, 200) + + # 动画效果 + self.animation = QPropertyAnimation(self, b"value") + self.animation.setDuration(500) # 500ms过渡动画 + self.animation.setEasingCurve(QEasingCurve.OutCubic) + + @pyqtProperty(int) + def value(self): + return self._value + + @value.setter + def value(self, val): + self._value = val + self.update() # 触发重绘 + + def setValue(self, val): + """设置进度值(带动画)""" + if val != self._value: + self.animation.stop() + self.animation.setStartValue(self._value) + self.animation.setEndValue(val) + self.animation.start() + + def setText(self, text): + """设置中心文本""" + self._text = text + self.update() + + def paintEvent(self, event): + """绘制圆形进度条""" + painter = QPainter(self) + painter.setRenderHint(QPainter.Antialiasing) # 抗锯齿 + + # 计算中心和半径 + width = self.width() + height = self.height() + size = min(width, height) + center = QPointF(width / 2, height / 2) + radius = size / 2 - 15 # 留出边距 + + # 绘制背景圆环(灰色) + pen = QPen() + pen.setWidth(12) + pen.setColor(QColor(230, 230, 230)) + pen.setCapStyle(Qt.RoundCap) + painter.setPen(pen) + + rect = QRectF(center.x() - radius, center.y() - radius, + radius * 2, radius * 2) + painter.drawArc(rect, 90 * 16, -360 * 16) # 绘制完整圆环 + + # 绘制进度圆环(渐变色) + if self._value > 0: + # 创建圆锥渐变(顺时针旋转效果) + gradient = QConicalGradient(center, 90) # 从顶部开始 + gradient.setColorAt(0.0, QColor(66, 133, 244)) # 蓝色 + gradient.setColorAt(0.5, QColor(25, 118, 210)) # 深蓝 + gradient.setColorAt(1.0, QColor(21, 101, 192)) # 更深蓝 + + pen.setBrush(gradient) + pen.setColor(QColor(66, 133, 244)) + painter.setPen(pen) + + # 计算进度角度(顺时针,从顶部开始) + span_angle = int(-(self._value / self._max_value) * 360 * 16) + painter.drawArc(rect, 90 * 16, span_angle) + + # 绘制中心文本(百分比) + painter.setPen(QColor(44, 62, 80)) + font = QFont('Microsoft YaHei', 28, QFont.Bold) + painter.setFont(font) + painter.drawText(rect, Qt.AlignCenter, self._text) class UpdateProgressDialog(QDialog): """ - 更新下载进度对话框 + 现代化更新进度对话框 - 特性: - - 实时显示下载进度 - - 显示重试状态 - - 支持用户取消 - - 现代化UI设计 + 更新流程阶段: + 1. 下载安装包 (0-50%) + 2. 等待UAC授权 (50-60%) + 3. 执行安装 (60-90%) + 4. 等待程序重启 (90-100%) """ + # 流程阶段定义 + STAGE_DOWNLOAD = 0 # 下载阶段 (0-50%) + STAGE_UAC = 1 # UAC授权阶段 (50-60%) + STAGE_INSTALL = 2 # 安装阶段 (60-90%) + STAGE_RESTART = 3 # 重启阶段 (90-100%) + def __init__(self, version, parent=None): super().__init__(parent) self.version = version self.downloader = None + self.current_stage = self.STAGE_DOWNLOAD + self.download_progress = 0 # 下载进度(0-100) + self.restart_progress = 0 # 重启阶段进度(0-100),用于外部检查 + self.init_ui() def init_ui(self): """初始化UI""" self.setWindowTitle("正在更新") - self.setFixedWidth(450) + self.setFixedSize(500, 600) # 禁止关闭按钮(只能通过取消按钮关闭) self.setWindowFlags(Qt.Dialog | Qt.WindowTitleHint | Qt.CustomizeWindowHint) + # 主布局 layout = QVBoxLayout() - layout.setSpacing(15) - layout.setContentsMargins(25, 20, 25, 20) + layout.setSpacing(20) + layout.setContentsMargins(30, 30, 30, 30) - # 标题 - self.title_label = QLabel(f"正在下载 v{self.version}") - self.title_label.setFont(QFont('Microsoft YaHei', 12, QFont.Bold)) + # ============ 标题区域 ============ + self.title_label = QLabel(f"正在更新到 v{self.version}") + self.title_label.setFont(QFont('Microsoft YaHei', 16, QFont.Bold)) self.title_label.setAlignment(Qt.AlignCenter) + self.title_label.setStyleSheet("color: #2c3e50; margin-bottom: 10px;") layout.addWidget(self.title_label) - # 进度条 - self.progress_bar = QProgressBar() - self.progress_bar.setMinimum(0) - self.progress_bar.setMaximum(100) - self.progress_bar.setValue(0) - self.progress_bar.setTextVisible(True) - self.progress_bar.setFormat("%p%") - layout.addWidget(self.progress_bar) + # ============ 圆形进度条 ============ + self.circular_progress = CircularProgressBar() + layout.addWidget(self.circular_progress, alignment=Qt.AlignCenter) - # 状态文本 - self.status_label = QLabel("准备下载...") + # ============ 阶段提示 ============ + self.stage_label = QLabel("📥 正在下载安装包...") + self.stage_label.setFont(QFont('Microsoft YaHei', 12)) + self.stage_label.setAlignment(Qt.AlignCenter) + self.stage_label.setStyleSheet("color: #34495e; margin-top: 10px;") + layout.addWidget(self.stage_label) + + # ============ 详细状态 ============ + self.status_label = QLabel("准备开始下载...") self.status_label.setAlignment(Qt.AlignCenter) - self.status_label.setStyleSheet("color: #666; font-size: 10px;") - self.status_label.setMinimumHeight(20) + self.status_label.setStyleSheet("color: #7f8c8d; font-size: 11px;") + self.status_label.setMinimumHeight(25) layout.addWidget(self.status_label) - # 重试信息标签(默认隐藏) + # ============ 重试信息(默认隐藏)============ self.retry_label = QLabel("") self.retry_label.setAlignment(Qt.AlignCenter) - self.retry_label.setStyleSheet("color: #ff9800; font-size: 10px; font-weight: bold;") - self.retry_label.setMinimumHeight(20) + self.retry_label.setStyleSheet("color: #ff9800; font-size: 11px; font-weight: bold;") + self.retry_label.setMinimumHeight(25) self.retry_label.hide() layout.addWidget(self.retry_label) - # 按钮布局 + # ============ 按钮区域 ============ button_layout = QHBoxLayout() button_layout.addStretch() - self.cancel_button = QPushButton("取消") - self.cancel_button.setFixedWidth(100) + self.cancel_button = QPushButton("取消更新") + self.cancel_button.setFixedWidth(120) + self.cancel_button.setFixedHeight(36) self.cancel_button.clicked.connect(self.cancel_download) button_layout.addWidget(self.cancel_button) @@ -93,39 +201,26 @@ class UpdateProgressDialog(QDialog): background: qlineargradient( x1:0, y1:0, x2:0, y2:1, stop:0 #f8fafb, + stop:0.5 #f1f4f6, stop:1 #e8ecef ); } QLabel { background: transparent; } - QProgressBar { - border: 2px solid #ddd; - border-radius: 8px; - text-align: center; - height: 28px; - background: white; - font-size: 11px; - font-weight: bold; - } - QProgressBar::chunk { - background: qlineargradient(x1:0, y1:0, x2:1, y2:0, - stop:0 #4285f4, - stop:0.5 #1976d2, - stop:1 #1565c0); - border-radius: 6px; - } QPushButton { background: qlineargradient( x1:0, y1:0, x2:0, y2:1, stop:0 #f5f5f5, stop:1 #e0e0e0 ); - border: 1px solid #ccc; - border-radius: 6px; + border: 2px solid #ccc; + border-radius: 8px; padding: 8px 20px; - font-size: 11px; + font-size: 12px; + font-weight: bold; font-family: 'Microsoft YaHei'; + color: #555; } QPushButton:hover { background: qlineargradient( @@ -133,25 +228,40 @@ class UpdateProgressDialog(QDialog): stop:0 #e8e8e8, stop:1 #d0d0d0 ); - border: 1px solid #999; + border: 2px solid #999; } QPushButton:pressed { background: #d0d0d0; } + QPushButton:disabled { + background: #f0f0f0; + color: #aaa; + border: 2px solid #ddd; + } """) def update_progress(self, downloaded, total): """ - 更新下载进度 + 更新下载进度(阶段1:0-50%) Args: downloaded: 已下载字节数 total: 总字节数 """ + if self.current_stage != self.STAGE_DOWNLOAD: + return # 不在下载阶段,忽略 + if total > 0: - # 计算百分比 - progress = int((downloaded / total) * 100) - self.progress_bar.setValue(progress) + # 计算下载百分比(0-100) + download_percent = int((downloaded / total) * 100) + self.download_progress = download_percent + + # 映射到总进度的0-50% + overall_progress = int(download_percent * 0.5) + + # 更新圆形进度条 + self.circular_progress.setValue(overall_progress) + self.circular_progress.setText(f"{overall_progress}%") # 转换为MB显示 downloaded_mb = downloaded / (1024 * 1024) @@ -159,13 +269,8 @@ class UpdateProgressDialog(QDialog): # 更新状态文本 self.status_label.setText(f"已下载 {downloaded_mb:.1f} MB / {total_mb:.1f} MB") - - # 更新进度条格式 - self.progress_bar.setFormat(f"%p% ({downloaded_mb:.1f}/{total_mb:.1f} MB)") else: - # 无法获取总大小时显示不确定进度 - self.progress_bar.setMaximum(0) - self.progress_bar.setFormat("正在下载...") + # 无法获取总大小时显示不确定状态 self.status_label.setText("正在下载,请稍候...") def show_retry_info(self, current_retry, max_retries): @@ -179,27 +284,139 @@ class UpdateProgressDialog(QDialog): self.retry_label.setText(f"⚠️ 下载失败,正在重试... ({current_retry}/{max_retries})") self.retry_label.show() - # 重置进度条 - self.progress_bar.setValue(0) - self.status_label.setText("等待重试...") + # 重置下载进度 + self.download_progress = 0 + self.circular_progress.setValue(0) + self.circular_progress.setText("0%") + self.status_label.setText("正在重试连接...") # 更新标题 self.title_label.setText(f"正在重试下载 v{self.version}") def download_finished(self, file_path): """ - 下载完成 + 下载完成,进入UAC授权阶段(阶段2:50-60%) Args: file_path: 下载的文件路径 """ - self.title_label.setText(f"✅ 下载完成 v{self.version}") - self.status_label.setText("下载完成,正在准备安装...") - self.status_label.setStyleSheet("color: #28a745; font-size: 10px; font-weight: bold;") - self.progress_bar.setValue(100) - self.progress_bar.setFormat("100% (完成)") + self.current_stage = self.STAGE_UAC + + # 更新进度到50% + self.circular_progress.setValue(50) + self.circular_progress.setText("50%") + + # 更新阶段提示 + self.stage_label.setText("🔐 等待管理员授权...") + self.title_label.setText(f"✅ 下载完成") + self.status_label.setText("请在UAC窗口点击「允许」以继续...") + self.status_label.setStyleSheet("color: #28a745; font-size: 11px; font-weight: bold;") + + # 禁用取消按钮 self.cancel_button.setEnabled(False) self.retry_label.hide() + + # 启动UAC等待动画(50% → 60%) + self.start_uac_waiting_animation() + + def start_uac_waiting_animation(self): + """启动UAC等待动画(进度条在50-60%之间缓慢移动)""" + self.uac_timer = QTimer(self) + self.uac_progress = 50 + + def update_uac_progress(): + self.uac_progress += 0.5 # 每次增加0.5% + if self.uac_progress <= 60: + self.circular_progress.setValue(int(self.uac_progress)) + self.circular_progress.setText(f"{int(self.uac_progress)}%") + else: + # 超过60%停止(等待用户授权) + self.uac_timer.stop() + + self.uac_timer.timeout.connect(update_uac_progress) + self.uac_timer.start(500) # 每500ms更新一次 + + def uac_authorized(self): + """ + 用户已授权UAC,进入安装阶段(阶段3:60-90%) + """ + # 停止UAC等待动画 + if hasattr(self, 'uac_timer'): + self.uac_timer.stop() + + self.current_stage = self.STAGE_INSTALL + + # 更新进度到60% + self.circular_progress.setValue(60) + self.circular_progress.setText("60%") + + # 更新阶段提示 + self.stage_label.setText("⚙️ 正在安装新版本...") + self.title_label.setText("正在安装") + self.status_label.setText("正在替换程序文件,请稍候...") + self.status_label.setStyleSheet("color: #007bff; font-size: 11px; font-weight: bold;") + + # 启动安装进度动画(60% → 90%) + self.start_install_animation() + + def start_install_animation(self): + """启动安装进度动画(60% → 90%)""" + self.install_timer = QTimer(self) + self.install_progress = 60 + + def update_install_progress(): + self.install_progress += 1 # 每次增加1% + if self.install_progress <= 90: + self.circular_progress.setValue(self.install_progress) + self.circular_progress.setText(f"{self.install_progress}%") + else: + # 安装完成,进入重启阶段 + self.install_timer.stop() + self.prepare_restart() + + self.install_timer.timeout.connect(update_install_progress) + self.install_timer.start(800) # 每800ms增加1%(共24秒) + + def prepare_restart(self): + """ + 准备重启(阶段4:90-100%) + """ + self.current_stage = self.STAGE_RESTART + + # 更新进度到90% + self.circular_progress.setValue(90) + self.circular_progress.setText("90%") + + # 更新阶段提示 + self.stage_label.setText("🚀 准备启动新版本...") + self.title_label.setText("即将完成") + self.status_label.setText("程序即将重启,请稍候...") + self.status_label.setStyleSheet("color: #28a745; font-size: 11px; font-weight: bold;") + + # 启动重启倒计时动画(90% → 100%) + self.start_restart_animation() + + def start_restart_animation(self): + """启动重启倒计时动画(90% → 100%)""" + self.restart_timer = QTimer(self) + self.restart_progress = 90 + + def update_restart_progress(): + self.restart_progress += 2 # 每次增加2% + if self.restart_progress <= 100: + self.circular_progress.setValue(self.restart_progress) + self.circular_progress.setText(f"{self.restart_progress}%") + + if self.restart_progress == 100: + # 🔥 到达100%,更新提示但不自动关闭 + self.status_label.setText("✅ 安装完成!等待启动确认...") + self.stage_label.setText("🎉 更新成功!") + self.restart_timer.stop() # 停止定时器 + else: + self.restart_timer.stop() + + self.restart_timer.timeout.connect(update_restart_progress) + self.restart_timer.start(500) # 每500ms增加2%(共2.5秒) def download_error(self, error_msg): """ @@ -216,35 +433,23 @@ class UpdateProgressDialog(QDialog): else: display_msg = error_msg + self.stage_label.setText("⚠️ 更新失败") self.status_label.setText(display_msg) - self.status_label.setStyleSheet("color: #dc3545; font-size: 10px; font-weight: bold;") - self.cancel_button.setText("关闭") - self.retry_label.hide() + self.status_label.setStyleSheet("color: #dc3545; font-size: 11px; font-weight: bold;") - # 进度条变红 - self.progress_bar.setStyleSheet(""" - QProgressBar { - border: 2px solid #dc3545; - border-radius: 8px; - text-align: center; - height: 28px; - background: white; - } - QProgressBar::chunk { - background: #dc3545; - border-radius: 6px; - } - """) + self.cancel_button.setText("关闭") + self.cancel_button.setEnabled(True) + self.retry_label.hide() def cancel_download(self): """取消下载""" - if self.downloader and self.downloader.isRunning(): - # 确认取消 + if self.current_stage == self.STAGE_DOWNLOAD and self.downloader and self.downloader.isRunning(): + # 下载阶段可以取消 from PyQt5.QtWidgets import QMessageBox reply = QMessageBox.question( self, "确认取消", - "确定要取消下载吗?", + "确定要取消更新吗?", QMessageBox.Yes | QMessageBox.No, QMessageBox.No ) @@ -252,11 +457,30 @@ class UpdateProgressDialog(QDialog): if reply == QMessageBox.Yes: self.downloader.cancel() self.downloader.wait() - self.status_label.setText("下载已取消") - self.reject() + self.status_label.setText("更新已取消") + self.reject() # 会自动清理定时器 else: - # 下载已完成或出错,直接关闭 - self.reject() + # 其他阶段或下载已完成,直接关闭 + self.reject() # 会自动清理定时器 + + def cleanup_timers(self): + """清理所有定时器""" + if hasattr(self, 'uac_timer'): + self.uac_timer.stop() + if hasattr(self, 'install_timer'): + self.install_timer.stop() + if hasattr(self, 'restart_timer'): + self.restart_timer.stop() + + def accept(self): + """对话框接受时清理资源""" + self.cleanup_timers() + super().accept() + + def reject(self): + """对话框拒绝时清理资源""" + self.cleanup_timers() + super().reject() if __name__ == "__main__": @@ -267,24 +491,28 @@ if __name__ == "__main__": app = QApplication(sys.argv) # 创建测试对话框 - dialog = UpdateProgressDialog("1.5.53") - - # 模拟下载进度 + dialog = UpdateProgressDialog("1.5.55") dialog.show() - # 测试进度更新 - import time - from PyQt5.QtCore import QTimer - - def test_progress(): - for i in range(0, 101, 10): - dialog.update_progress(i * 1024 * 1024, 100 * 1024 * 1024) - QApplication.processEvents() - time.sleep(0.2) + # 模拟完整更新流程 + def simulate_update(): + # 阶段1:模拟下载 (0-50%) + def simulate_download(): + total_size = 100 * 1024 * 1024 # 100MB + for i in range(0, 101, 5): + downloaded = int(i * total_size / 100) + dialog.update_progress(downloaded, total_size) + QApplication.processEvents() + QTimer.singleShot(100, lambda: None) # 延迟 + + # 下载完成 + QTimer.singleShot(2000, lambda: dialog.download_finished("/tmp/test.exe")) + + # 阶段2:模拟UAC授权 (50-60%) + QTimer.singleShot(5000, lambda: dialog.uac_authorized()) - dialog.download_finished("/tmp/test.exe") + simulate_download() - QTimer.singleShot(500, test_progress) + QTimer.singleShot(500, simulate_update) sys.exit(app.exec_()) -