# VI2G 构建与发布

## 开发构建

要求 Rust 工具链和支持 DirectX 12、Vulkan 或 Metal 的图形设备。

```powershell
cargo run --release
```

## 正式构建

```powershell
cargo build --release
```

Windows 可执行文件位于 `target/release/vi2g.exe`。正式压缩包应命名为 `VI2G-<version>-windows-x64.zip`，并至少包含：

- `VI2G.exe`
- `README.md`
- `LICENSE.txt`
- `AUTHORSHIP_AND_LICENSES.md`
- `SECURITY_AND_PRIVACY.md`
- `SHA256SUMS.txt`

不要把以下内容打入轻量发布包：

- `target/`、PDB 和编译缓存。
- 本地 `ml-sharp/` 环境、Python 虚拟环境或模型权重。
- 用户输入、输出和预设文件。
- Apple SHARP 源码或模型。

## 发布检查

1. 确认 `Cargo.toml`、窗口标题和 Windows 文件属性版本一致。
2. 确认 CompanyName、LegalCopyright、ProductVersion 与 FileVersion 完整。
3. 运行 `cargo test` 和 `cargo build --release`。
4. 生成 ZIP 后计算 SHA-256，并在网站下载区公开。
5. 从最终下载地址重新下载并核对哈希。
6. 检查压缩包内含 MIT License 与第三方说明。

## 代码签名

当前发布物没有 Authenticode 签名，因此 Windows 可能显示“未知发布者”。获得有效代码签名证书后，应对 `VI2G.exe` 和最终安装程序签名并加时间戳；在此之前，官网 SHA-256 是用户核验文件完整性的主要方式。
