Skip to content

SSwser/exe-version-selector

Repository files navigation

EVS (exe-version-selector) 项目

⚡ 新用户快速开始 (推荐)

想要文件分发和版本管理?使用Makefile构建:

make server-run    # 构建并启动服务器

访问: http://localhost:8080

💡 提示: 首次运行前需要在 build/server/downloads/ 目录创建应用manifest文件


这个仓库包含两个独立的系统,请根据需求选择使用:


🚀 系统1:多应用文件服务器 (推荐)

跨平台HTTP文件托管服务

📁 项目结构

cmd/server/              # 文件服务器入口
├── main.go             # 多应用文件服务器
└── ...

server.config.json      # 服务器配置文件
Makefile                # 构建脚本
downloads/              # 文件存储目录

⚡ 快速启动

make server-init  # 初始化示例数据
make server-run   # 构建并启动服务器

🎯 核心功能

  • 多应用托管: 每个应用独立的manifest和认证策略
  • 安全认证: per-app API密钥验证
  • 速率限制: 每个应用独立的请求限制
  • SRE监控: 健康检查、就绪检查、监控指标
  • 跨平台: 支持Windows/Linux/macOS

📱 访问端点

  • 应用列表: http://localhost:8080/
  • 应用manifest: http://localhost:8080/{app}/latest.json
  • 健康检查: http://localhost:8080/health
  • 监控指标: http://localhost:8080/metrics

⚙️ 系统2:Windows进程管理器

Windows特定的应用生命周期管理

📁 项目结构

cmd/evs/                # 进程管理核心
├── main.go            # EVS进程管理器
└── ...

cmd/launcher/           # 客户端界面
├── main.go            # 托盘应用
└── ...

config.yaml            # 进程管理配置

🎯 核心功能

  • 进程管理: Windows应用启动/监控/终止
  • 托盘界面: 系统托盘图标和菜单
  • 参数代理: 命令行参数传递和管理
  • Socket通信: TCP Socket (127.0.0.1:50505)

⚡ 快速启动

# 构建GUI版本
go build -ldflags="-H windowsgui" -o evs.exe ./cmd/evs/main.go

# 构建控制台版本
go build -o evs-console.exe ./cmd/evs/main.go

# 启动托盘界面
go build -o launcher.exe ./cmd/launcher/main.go

🎯 使用建议

需求场景 推荐系统 入口文件
文件分发/版本管理 🚀 文件服务器 cmd/server/main.go
Windows进程管理 ⚙️ 进程管理器 cmd/evs/main.go
托盘界面 ⚙️ 进程管理器 cmd/launcher/main.go

📋 重要提醒

  • 两个系统独立运行,不要混合使用
  • 文件服务器是当前主要开发焦点
  • 进程管理器处于维护模式,仅Windows支持

🔗 开发文档


📁 完整目录结构

├── cmd/
│   ├── server/          # 🚀 文件服务器 (活跃开发)
│   ├── evs/            # ⚙️ 进程管理器 (维护模式)
│   └── launcher/       # 🖥️ 托盘界面 (维护模式)
├── server.config.json  # 文件服务器配置
├── Makefile            # 构建脚本
├── config.yaml         # 进程管理器配置
├── downloads/          # 文件存储
└── docs/               # 文档目录
    ├── file-server.md
    └── process-manager.md

About

A local executable program multi-version switch and proxy tool for Windows, supporting taskbar tray menu, parameter proxy, application hot switching and other functions.

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages