# autoupdate **Repository Path**: shenjuncaci/autoupdate ## Basic Information - **Project Name**: autoupdate - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-07-01 - **Last Updated**: 2025-06-30 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # HHUpdateApp 这是一个用于软件更新检查和管理的应用程序项目,支持从服务器下载更新信息、比较版本、下载并安装更新等功能。 ## 主要特性 - 版本比较 - 从服务器下载更新信息 - 图形化更新进度展示 - 支持静默更新和用户触发更新 - 提供设置界面以配置更新参数 ## 项目结构 - **HHUpdateApp**: 主应用程序项目,包含主窗体和更新逻辑。 - **HHSetupApp**: 配置和设置界面项目,用于管理更新配置。 - **Demo**: 示例项目,演示如何集成和使用更新功能。 - **Images**: 包含应用程序中使用的图片资源。 - **Resources**: 包含应用程序图标和其他资源文件。 - **UpdateForm.cs**: 更新主界面,提供更新操作的图形界面。 - **SettingForm.cs**: 设置界面,允许用户修改更新配置。 - **RemoteVersionInfo.cs**: 定义远程版本信息的类。 - **UpdateWork.cs**: 包含更新工作的核心逻辑,如备份、恢复、更新等。 - **LogManger.cs**: 日志管理类,用于记录应用程序运行日志。 - **HHBtn.cs**: 自定义按钮控件,支持悬停和点击效果。 - **ProgressBarEx.cs**: 扩展的进度条控件,用于展示更新进度。 ## 快速开始 ### 安装依赖 - [.NET Framework](https://dotnet.microsoft.com/download/dotnet-framework) - [Visual Studio](https://visualstudio.microsoft.com/)(或其他支持C#的IDE) ### 构建项目 1. 克隆仓库到本地: ```bash git clone https://gitee.com/your-username/your-repo-name.git ``` 2. 打开 `HHUpdateApp.sln` 文件: - 使用 Visual Studio 打开解决方案文件。 - 构建解决方案以生成可执行文件。 ### 运行项目 - 在 Visual Studio 中运行项目或直接运行生成的 `.exe` 文件。 - 主程序可通过命令行参数传递更新信息: ```bash HHUpdateApp.exe "YourApp.exe" "http://yourserver.com/update.json" ``` ## 使用说明 - **MainForm.cs**: 主程序窗体,负责检查更新、展示更新按钮。 - **UpdateForm.cs**: 展示更新进度和详细信息。 - **SettingForm.cs**: 修改更新服务器地址、忽略版本等设置。 - **RemoteVersionInfo.cs**: 从服务器获取版本信息,如更新包路径、版本描述等。 - **UpdateWork.cs**: 处理实际的更新流程,包括下载、文件替换等操作。 ## 示例代码 ### 从服务器下载更新信息 在 `MainForm.cs` 中,使用以下方法从服务器下载更新信息: ```csharp private RemoteVersionInfo DownloadUpdateInfo(string serverUrl) { // 实现下载并解析更新信息的逻辑 } ``` ### 版本比较 使用 `VersionCompare` 方法比较本地和远程版本: ```csharp private static int VersionCompare(string ver1, string ver2) { // 返回 0 表示版本相等,1 表示远程版本较新,-1 表示本地版本较新 } ``` ### 显示更新提示框 在 `HHMessageBox.cs` 中,通过静态方法展示更新提示: ```csharp public static DialogResult Show(string text, string caption) { // 显示自定义更新提示框 } ``` ## 贡献指南 欢迎提交 Pull Request。在提交之前,请确保: 1. 遵循项目的代码风格。 2. 更新或新增单元测试以验证你的修改。 3. 在描述中清晰说明你的改动。 ## 许可证 本项目采用 MIT 许可证。详情请查看 [LICENSE](LICENSE) 文件。