Windows 原生多标签文件管理器与桌面格子,使用 Rust、Win32/COM、Direct2D 和 DirectWrite。
文件浏览和搜索集成在同一个主窗口,采用与桌面格子协调的界面风格。 窗口、绘图及文件操作复用 Win32、Direct2D 和 Windows Shell;共享图标、菜单及快捷键能力来自 ZSUI,其源码版本固定记录在发行配置中。
当前版本:0.3.13。
| 版本 | Cargo features | 功能 |
|---|---|---|
| 标准版 | 无 | 文件管理器、搜索、预览、界面设置和系统集成 |
| 网络版 | network |
标准版 + FTP、SFTP/SSH 地址、网络驱动器和网络位置 |
| 桌面版 | desktop |
标准版 + 桌面格子与腾讯布局导入 |
| 全量版 | network,desktop |
全部功能,默认构建版本 |
| 主题版 | themed |
全量功能 + 亚克力、Mica、纯色深浅主题,独立安装与配置 |
| 桌面盒子独立版 | desktop-box |
默认启动桌面格子,独立配置与自启,不包含文件管理窗口、全盘搜索和接管 |
打包脚本支持为上述六个版本生成 Windows x64 便携 ZIP 和安装器,文件名为
ZSDesk-<版本>-<standard|network|desktop|full|themed|desktop-box>-x64。
安装器默认按当前用户安装,保留个人数据,文件夹接管和登录启动均由软件内设置。
- 多标签、收藏栏、地址面包屑和系统快速访问。
- 标签栏可置于上方、左侧或右侧;中键点击文件夹打开新标签,双击标签可关闭,标签数量可隐藏。
- 标签右键支持锁定与解锁;锁定标签不会被关闭标签、批量关闭或关闭窗口操作移除,关闭窗口前须先解锁。
- 收藏栏支持虚拟分类目录、重命名和拖动排序,可将收藏移入分类或移回根级;分类不会创建磁盘文件夹。
- 分类可单独移除并保留收藏,也可连同子分类和收藏一起删除;实际文件保持不变,多窗口编辑不会恢复已删除的分类。
- “≡ → 标签页 → 重新打开窗口时”可选择恢复标签页、打开此电脑或自定义文件夹;外部指定的目录与文件定位优先处理。
- 左侧使用原生 Shell 导航树,支持展开、收起、固定位置和系统虚拟文件夹。
- 文件列表使用
IExplorerBrowser,文件操作、拖放、冲突处理和进度由 Windows Shell 执行。 - 命令栏和空白右键的新建使用系统 ShellNew 模板,创建后自动选中并进入重命名;空白菜单的查看、排序和刷新作用于当前栏。
- 复制、移动保留系统冲突确认与进度窗口,完成、取消和部分跳过会在状态栏分别反馈。
- “排序 → 计算并按总大小排序”可在原文件列表中按文件和文件夹总大小排序;内置计算无需额外搜索引擎,未知大小与空文件夹分开显示。
- 文件夹、回收站、此电脑、网络及控制面板使用系统显示名称。
- 界面遵循系统缩放;Windows 11 22H2 及以上支持 Mica 和系统窗口按钮。
应用菜单(≡、更多、查看、排序、标签与格子菜单)采用 Windows 11 浮层菜单样式,Windows 10 上外观相同; 高对比度模式使用系统菜单。
“≡ → 布局”可控制整排命令栏以及新建、剪切、复制、粘贴、重命名、共享、删除、 排序、查看、更多和预览的显示。隐藏项目后自动重排,窄窗口使用紧凑布局。
“双栏布局”可在“≡ → 布局”或右下角按钮中开启、关闭。两侧保留各自的标签、目录、选区和搜索条件, 点击一侧后,地址栏、命令栏和快捷键操作该侧;拖动中间分隔条调整宽度。 右下角同时保留详细信息与缩略图切换按钮。关闭某栏最后一个标签时保留另一栏, 关闭窗口最后一个标签时默认关闭文件窗口,可在“≡ → 标签页”中改回保留空标签。
“≡ → 布局 → 导航窗格选项”提供回收站、网络导航项的显隐,以及“此电脑”启动时展开、折叠或跟随起始位置。
Windows 10 保留 Shell 导航控件的默认尺寸;Windows 11 的导航行距随系统紧凑模式、显示缩放和当前字体调整,缩进由 Shell 处理。
普通文件夹的查看方式、图标大小、排序、分组及列设置由 Shell 按文件夹保存,并按 ZSDesk 配置目录隔离;未设置的目录继承系统文件夹模板。
标签页另行保存选区与浏览位置,搜索结果和临时菜单宿主不覆盖普通文件夹的视图偏好。
主窗口及双栏的锁定状态随标签会话保存;系统注销和关机仍按系统流程保存并结束会话。
列标题随视图切换,仅在详细信息视图显示。鼠标手势可开关:按住右键向左为后退、向右为前进、
向上为上一级、向下为刷新;原地右键仍打开原生菜单。
“≡ → 新建窗口”或 Ctrl+N 打开另一个文件窗口。
| 快捷键 | 功能 |
|---|---|
| Ctrl+T / Ctrl+W | 新建 / 关闭标签 |
| Ctrl+L / Ctrl+F | 地址输入 / 快速搜索 |
| Alt+← / Alt+→ / Alt+↑ | 后退 / 前进 / 上一级文件夹 |
| 鼠标后侧键 / 前侧键 | 后退 / 前进文件夹 |
| Ctrl+C / Ctrl+X / Ctrl+V | 复制 / 剪切 / 粘贴文件 |
| Ctrl+Z / Ctrl+Y | 撤销 / 重做 Windows Shell 支持的文件操作 |
| Ctrl+A | 全选文件 |
| Ctrl+Shift+A | 反向选择文件 |
| F2 / Delete / Shift+Delete | 重命名 / 删除 / 永久删除 |
| F5 | 刷新当前目录或搜索 |
| Alt+P / 空格 | 预览窗格 / 快速预览 |
| Ctrl+N / F11 | 新窗口 / 全屏切换 |
| F6 / Shift+F6 | 下一个 / 上一个输入区域 |
| Ctrl+滚轮 / Ctrl++ / Ctrl+- / Ctrl+0 | 图标缩放 / 放大 / 缩小 / 恢复默认大小 |
| Ctrl+Shift+1~8 | 切换图标、列表、详细信息、平铺等视图 |
输入框和文件重命名编辑框保留文本编辑快捷键;隐藏右键菜单项目不会禁用文件快捷键。 普通删除遵循系统回收站规则;永久删除、不可回收位置及系统未记录的操作不能撤销。
搜索框固定在地址栏右侧,Ctrl+F 聚焦输入文件名、路径或类型筛选,例如 ext:pdf。
结果直接显示在当前标签页的文件列表中,不展开独立搜索面板。清空输入或按 Esc 返回原文件夹。
“命令栏 … → 搜索选项”提供文件类型、搜索范围、排序、上一页、下一页及索引设置。
每页显示最多 200 项,状态栏显示总数和当前页数量;不同标签页分别保留搜索条件。
“≡ → 搜索”可选择 自带搜索 或 Everything 搜索。新配置默认使用自带搜索,已有配置保留原来的选择。 选择结果保存后,导航、双栏和后台快捷键保持一致;所选 Everything 程序不可用时临时使用自带搜索,保留原选择,不自动安装外部程序。 其他文件窗口保存会话时也不会把后端改回旧值。
自带搜索使用 Rust 实现的紧凑列式索引和校验快照,同一配置的窗口与双栏共享一份内存索引。 首次建立时,管理员权限下使用只读 MFT 枚举并补全目录中的硬链接名称;普通权限下使用批量目录遍历。 后续通过普通权限 USN 日志更新文件标识与目录关系;日志身份或保留范围变化时在已有目录库上重新校验,不创建或修改系统日志。 不能使用 USN 的位置会在搜索时刷新目录,无法读取的位置会显示状态。 默认空闲 5 分钟保存快照并释放内存索引,可改为 1 或 15 分钟;再次搜索时加载快照并补齐变更。 释放后需要把紧凑索引重新读入内存,无需重新遍历全部文件;日志失效、快照无效或无可用 USN 的位置按需重新扫描。 快照位于当前用户的本地应用缓存目录,不使用旧的 SQLite 文件名数据库。
开发和缓存目录默认保留目录入口、跳过其中的内容,包括 .git、node_modules、target、.cargo、.rustup、
.cache、__pycache__、虚拟环境及临时目录;“收录开发和缓存目录内容”可恢复收录。
文件大小和修改时间索引默认关闭,相关排序只为匹配结果读取属性;开启后额外分配每项 16 字节的属性列。
拼音首字母匹配默认关闭,开启后按字典首读音辅助匹配。
自带搜索支持通配符、引号、<…> 分组、|、!、ext:、file:、folder: 和 path:;
其他 Everything 专用语法会提示切换后端,不会被当作普通关键词悄悄执行。
Everything 是可选兼容后端。标准版、网络版、桌面版、全量版和主题版随包提供 官方 Everything 1.4.1.1032 x64 非 Lite 引擎,也可在“≡ → 搜索 → 选择已安装的 Everything…”中指定程序。 指定来源显示勾选,可恢复自动选择;“搜索引擎状态…”显示保存的程序路径、实际连接实例、索引就绪和系统服务状态,并自动刷新。 保存程序路径不表示已建立连接,首次搜索时连接或启动;状态窗口区分已配置、未连接、索引加载、就绪和不可用。 只有选择 Everything 后才会按需连接或启动索引进程,普通列表查询通过 Unicode IPC 分页读取结果路径。
Everything 的快速全盘 NTFS 索引需要兼容服务或管理员权限。未安装服务时,可在
“≡ → 搜索 → 启用快速索引服务…”中授权启用 ZSDesk 专用服务。
普通权限下既没有兼容服务,也没有已配置可用索引时,搜索会提示设置;不会静默退回到遍历所有磁盘。
索引正在加载或建立时显示进度,就绪后自动执行查询,未就绪状态不会当作零结果。
索引范围、包含和排除规则由 Everything 管理,
未纳入其索引的位置不会出现在搜索结果中。
“≡ → 搜索 → 显示文件夹大小”默认关闭。开启后,普通文件夹可显示文件与文件夹的逻辑总大小,并在原列表中排序。
选择 Everything 且已有可用大小索引时优先读取索引;否则在后台只读计算,逐项显示完成结果,不建立额外文件名索引。
空文件夹显示零,未能完整读取的项目保持未知;不跟随目录链接,不修改文件内容或文件属性。
目录变化会触发更新,双栏分别保留排序与选中项,关闭开关恢复原生大小列及列宽。
每个视图最多计算 32,768 个项目,并限制项目快照占用;超过范围会说明原因并保留原生显示。
搜索结果、库和虚拟视图保留原生表现;“排序 → 文件夹大小概览…”提供独立概览。
Everything 保留原始程序和许可,位于 engines/everything/;发行包不包含 .ini、.db 或个人搜索数据。
Everything 后端需要保留完整引擎目录或指定可用程序;自带搜索不依赖 Everything。
桌面盒子独立版不提供文件名搜索,也不附带 Everything。
“≡ → 系统集成 → 开机启动与全局快捷键…”分别设置主窗口、后台快捷键和桌面格子的登录启动;全局快捷键默认为 Ctrl+Alt+Space。
快捷键打开独立快速搜索窗格并聚焦输入框;关闭后保留内存索引至空闲期限,重新打开可直接复用。
全局快捷键冲突会显示错误并保留设置入口;安装包默认不启用登录启动,索引服务由用户授权启用。
同一配置的文件窗口、桌面格子、快捷键与搜索请求管理共用一个 ZSdesk 进程,文件窗口关闭后复用原有 UI 线程。 桌面图标恢复监护单独运行,桌面线程或主进程异常结束时恢复系统图标;Office 预览宿主仅在预览期间运行。 文件位置转发辅助组件与 Everything 索引引擎按各自功能运行,关闭搜索不会退出用户原有的 Everything。
右侧预览窗格、空格及悬停预览使用独立预览宿主,优先调用系统预览处理器, 可选择系统默认、Office 优先或 WPS 优先,支持已注册的 32 位及 64 位处理器,并提供文本和图片回退。 组件缺失、关联失效或被系统禁用时显示具体状态,不更改系统文件关联,也不把解码器加载到主窗口进程。 Office 文档缺少可用插件时,可用已安装 WPS 只读渲染为临时 PDF;文档关闭后释放组件和临时文件。 预览宿主异常或加载超时不会阻塞文件管理窗口。 悬停预览默认关闭,可在“≡ → 预览与操作”中开启;停留后才显示,拖动和文字输入时不触发,不改变文件选区。 文本、图片尺寸及保留图像有边界,关闭预览释放文件流和显示资源。
主文件窗口和桌面格子的文件菜单在独立宿主中加载与执行,支持经典及可用的 Windows 11 样式。 空闲宿主有界复用,当前选区和命令在每次请求中重新核对;宿主异常会返回状态。 “≡ → 诊断日志…”打开独立的只读日志窗口,显示菜单阶段、异常代码与冷暖启动耗时,支持刷新和复制。 日志保留当前及上一代,仅保存于本机。
启用“默认用 ZSDesk 打开文件夹和磁盘”后,Win+E 同时打开 ZSDesk;程序未运行时会自动启动。
入口使用当前用户的 Explorer 启动命令;后台运行时提供 Win+E 兼容接管。
桌面“此电脑”具有独立的默认打开关联;原值及类型随接管设置备份,停用时恢复。
默认完整系统菜单使用公开 IContextMenu 接口,适用于 Windows 10/11,按文件类型和当前目录加载已注册的扩展。
Git、SVN、压缩软件及其它扩展由 Windows Shell 提供,没有预设厂商隐藏清单,也不先显示简化常用菜单。
格子的文件菜单在临时隔离进程中执行,加载超时或扩展异常会返回错误,主窗口与格子仍可继续使用。
“≡ → 右键菜单”控制菜单样式和显示的命令;格子读取相同的显示设置。
格子标题、右上角更多按钮和空白处打开格子管理菜单,提供锁定、重命名、主题、标签与启动设置。 其中“文件夹系统菜单…”打开所在文件夹的原生背景菜单;“所选项目”保留移动到格子等管理操作。 格子管理命令与 Windows 文件命令分别派发,避免命令编号冲突和点击错项。
“管理此处的完整右键菜单…”读取当前选择和目录实际提供的菜单项,勾选控制显示;显示子项时同时恢复其父菜单。 设置仅作用于 ZSDesk,不禁用其它程序或修改系统注册表;动态深层菜单保留系统原样,无法唯一识别的项不能隐藏。 可选 Windows 11 样式需要兼容的系统组件;不兼容版本直接使用完整系统菜单。自定义菜单规则使用完整系统菜单执行。 扩展菜单进程在执行命令后也可复用,连续右键无需重新启动进程;进程仍有对话框或剪贴板数据时不会被结束。 这些设置仅作用于 ZSDesk 内的菜单。
鼠标侧键分别向后、向前浏览文件夹;地址输入和文件重命名期间保留编辑状态。 鼠标驱动同时发送侧键与浏览命令时只导航一次。 复制、剪切先保存有界文件路径快照,粘贴和移动在独立操作队列中执行,保留系统进度、冲突处理、取消和撤销。 复制、移动、粘贴和新建完成后选中原窗格中的实际结果;用户切换目录或改变选区后,不以迟到结果覆盖当前选择。 格子的自动拾取可独立关闭;右键菜单、重命名和文件拖放期间保持展开,操作结束后恢复悬停收起。 外部文件拖到桌面空白处时保留为散放图标,按鼠标落点放置;拖入格子内部时加入对应格子。
Listary 插件通过官方 FileAppPlugin 接口提供当前标签页已打开的文件夹。
适用于 Listary 6 和 7.0;Listary 7.1 已停止加载用户安装的集成插件,暂不支持此接入方式。
Listary 7.1 可使用随附 integrations/listary/Prepare-Listary7.ps1 生成目录打开及搜索结果定位的配置副本;这两项适配不依赖旧 DLL。
插件源码和部署步骤见 native/listary。启用后,在标准打开/保存对话框中
按 Listary 的 Ctrl+G 快速切换快捷键,可切换到当前 ZSDesk 文件夹。
搜索结果、虚拟系统位置和尚未完成的导航不作为快速切换目录。
双栏模式的“更多”菜单提供“复制到另一栏”和“移动到另一栏”,通过一次原生批量文件操作直接提交选中文件,保留系统进度、冲突处理和撤销记录,不改变剪贴板内容。
“预览与操作 → 空格预览方式”默认使用内置预览,也可选择自行安装并运行的 QuickLook;QuickLook 不可用时自动使用内置预览,编辑文件名及输入路径时仍按普通文本输入处理。QuickLook 不随 ZSDesk 安装。
音视频速览支持 Windows 媒体组件可解码的格式,并提供播放、暂停和进度定位;不支持的编码可用默认播放器打开。快速搜索窗格可从应用菜单打开,也可在搜索设置中启用全局快捷键,支持 Enter 打开结果、打开文件位置及 Esc 关闭。“关于 ZSDesk”提供检查更新和正式发布页入口。
桌面版和全量版可从主菜单启动格子,或执行 ZSDesk.exe --desktop。
桌面盒子独立版直接启动格子,配置保存在 %APPDATA%\ZSDesk-DesktopBox;安装标识和登录启动与其他版本独立。
- 文件夹映射、桌面项目分组、手动排序、大小和屏幕位置。
- 悬停临时展开,移开收起;双击固定展开,支持锁定和拖动。
- 多标签:点标题栏「+」或把一个格子的标题拖到另一个格子的标题栏合并;点击、滚轮或 Ctrl+Tab 切换, 拖动标签排序,拖出标题栏成为独立格子。标签共用位置、大小、折叠和锁定,关闭标签不删除文件。
- 图标/列表视图、主题、毛玻璃、透明度、托盘及桌面空白双击开关。
- 标题文件数量默认隐藏,可在格子“外观”设置中启用。
- 一键整理使用项目引用;删除格子不会删除文件。
- 整理模式配有恢复进程,异常退出时恢复系统桌面图标。
- 图标请求、冷缓存与绘图资源按可见状态回收。
腾讯桌面布局迁移只读取本机布局文件,保留分组、成员顺序和屏幕布局, 不移动原文件、不修改腾讯配置,也不分发腾讯程序或图形资源。
# 预览迁移报告;“-”表示自动查找本机腾讯布局。
ZSDesk.exe --import-tencent - --import-report "C:\Reports\layout.json"
# 退出 ZSDesk 格子后应用迁移;原配置保留为 desktop-fences.before-tencent.json。
ZSDesk.exe --import-tencent - --import-report "C:\Reports\layout.json" --apply-import“≡ → 系统集成”提供不接管(按备份恢复系统设置)、增加右键入口和默认打开文件夹和磁盘。
操作仅涉及当前用户注册表;“此电脑”可由 ZSDesk 打开,其他系统虚拟文件夹保持原有默认处理方式。
默认接管同时登记文件夹和磁盘的 open、explore 动作,保存原始处理程序与隐藏标志,恢复时保留其他程序后续写入的设置。
运行中的默认配置通过标准 Shell 打开会话接收目录请求;WPS 文档标签的“打开文件位置”可创建目录标签并选中目标文件。
每个文件窗口的已完成导航标签登记到系统窗口集合,双栏分别登记;系统文件定位请求在对应窗格选中项目,Explorer 重启后重新登记。
“接管新出现的系统浏览窗口”监听新出现的单标签文件夹与“此电脑”,确认 ZSDesk 已完成导航、选区和必要的激活后关闭来源窗口。
准备阶段最多等待 8 秒,来源窗口保持可见;短暂隐藏期限为 800 毫秒,独立守护负责超时及异常恢复。
已有窗口、多标签窗口和用户已操作的窗口保留原状。文件选择接管由独立开关控制。
“≡ → 系统集成 → 接管文件选择窗口(多标签)”使用现有资源管理器的标签、地址栏、收藏和文件视图,底部提供文件名、文件类型、选择与取消。 支持标准 Windows 打开文件对话框中的本地及网络文件,保留调用方的单选、多选和文件类型,最多一次选择 256 项;结果由原应用校验和接收。 原生文件夹选择和上传目录窗口使用独立目录模式,可选择当前文件夹或选中的子文件夹,双击子文件夹继续浏览。 选择模式的标签与选区不覆盖普通文件窗口的会话。关闭接管会恢复尚未完成的系统选择窗口,异常退出由独立监护恢复。 保存、自绘及无法识别的对话框保持原有处理方式。
通用文件定位通过标准打开会话、系统窗口登记和新窗口转发处理,无需逐个登记应用。 “系统集成 → 文件位置转发”保留为可选兼容组件,可以发现和选择 Codex、微信及其他兼容的 x64 应用, 也可手动添加程序,然后一键启用所选应用。登录启动单独设置,默认关闭。 仅调用受支持 Windows 文件定位接口的应用可接入;程序身份和调用模块在本地校验。 应用升级或转发组件被占用时会提示重新发现或重启相应应用。
组件由源码构建,随安装包放在 routing/。默认不带应用绑定或个人路径;
启用时才在当前配置目录生成绑定。已有旧版配置可保留兼容转发。
多个配置目录使用独立窗口标识,避免将文件定位请求送到另一实例。
支持严格识别的系统 explorer.exe 文件导航进程启动;未知开关、调试或挂起启动等仍由系统处理。
少数程序通过辅助 DLL 打开文件夹,可在“补充程序组件”中明确选择该程序目录内的调用组件。
已加载旧组件的应用需要先关闭,再应用设置,最后重新打开;旧转发保持可用,不会强制结束应用。
组件和配置说明见 native/routing/README.md。
网络版和全量版支持系统 FTP、SMB/UNC,以及映射/断开网络驱动器、添加网络位置。
sftp:// 和 ssh:// 地址需要另行安装 SSHFS-Win 与 WinFsp。
默认目录为 %APPDATA%\ZSDesk。程序旁的 portable.flag 使用相邻 data/ 目录,
--profile-dir 可指定独立配置目录。
主题版默认使用 %APPDATA%\ZSDesk-Theme,安装目录、启动标识和配置与其他版本独立。
主题版可在“≡ → 主题与材质”中分别选择材质(跟随系统、Mica、亚克力、纯色)和颜色(跟随系统、浅色、深色);不支持材质效果的系统使用纯色背景。
地址栏输入 pwsh、powershell、nu 或 nushell 可在当前文件夹启动对应终端。
桌面布局、会话、搜索索引、应用绑定和系统接管备份仅保存于本机, 不包含在源代码、默认配置或发行包中。卸载保留个人数据,并仅恢复仍由当前安装拥有的系统集成。
- 文件列表、文件操作和虚拟目录复用 Windows Shell;本程序不替换系统任务栏、Shell 服务或其他应用的打开/保存对话框。
- 标签页快照保存视图类型、图标大小、可见列顺序及宽度、排序、分组、焦点、滚动位置及最多 256 项选择(PIDL 总量 128 KiB);不支持相应接口的虚拟位置保留原生默认行为。
- 文件名搜索按设置使用自带索引或 Everything,不建立文件内容索引;自带索引遵守开发缓存目录排除和读取权限,Everything 的范围与扩展语法由其索引设置决定。
- 应用接入覆盖可识别的文件定位接口,不承诺接管每个软件的全部打开方式;SFTP/SSH 依赖 SSHFS-Win 与 WinFsp。
- Windows 11 原生菜单及预览能力受系统版本和已安装扩展影响,未支持的菜单组件使用原版表现形式。
需要 Windows x64、Rust MSVC 工具链、Visual Studio C++ 工具与 Windows SDK;
验证工具链为 Rust 1.99.0。打包使用 PowerShell 7,安装器需要 Inno Setup 6.3 或更新版本。
构建需要 Rust 1.89 或更新版本;持续集成使用 Rust 1.99。
VC Runtime 从 Visual Studio x64 Redist 目录获取。
Everything 使用固定版本的官方便携分发文件,来源与 SHA-256 记录在
packaging/engines/everything.json。-EverythingDir 指向包含原始程序、语言包、完整许可及该清单的目录。
ZSUI 按需启用原生窗口、虚拟列表、输入和快捷键等功能。其固定源码版本记录于
packaging/zsui-revision.txt,位于本仓库的同级 zsui/ 目录。
git clone https://github.com/qiu7824/zsdesk.git
git clone https://github.com/qiu7824/zsui.git
git -C zsui checkout (Get-Content zsdesk/packaging/zsui-revision.txt -Raw).Trim()
Set-Location zsdesk
$env:CARGO_TARGET_DIR = 'C:\Build\ZSDesk-target'
$env:CARGO_PROFILE_DEV_DEBUG = '0'
$env:CARGO_PROFILE_TEST_DEBUG = '0'
cargo test --workspace --release --locked
cargo build --release --locked -p zsdesk-app
# 可选功能版本
cargo build --release --locked -p zsdesk-app --no-default-features
cargo build --release --locked -p zsdesk-app --no-default-features --features network
cargo build --release --locked -p zsdesk-app --no-default-features --features desktop
cargo build --release --locked -p zsdesk-app --no-default-features --features themed
cargo build --release --locked -p zsdesk-app --no-default-features --features desktop-box
# 转发组件与六个发行版本
./native/routing/build.ps1 -OutputDir 'C:\Build\ZSDesk-routing' -BuildDir 'C:\Build\ZSDesk-routing-build'
./scripts/package.ps1 -WorkDir 'C:\Build\ZSDesk-package' -TargetDir $env:CARGO_TARGET_DIR `
-RoutingDir 'C:\Build\ZSDesk-routing' -EverythingDir 'C:\Build\Everything-1.4.1.1032-x64' `
-InnoCompiler 'C:\Program Files (x86)\Inno Setup 6\ISCC.exe'打包器验证程序版本与 feature 身份,生成文件哈希清单,移除本机编译路径信息;
已有发行目录不会被静默覆盖。-Editions full,desktop 可选择部分版本,
-RuntimeDir 可指定 Visual Studio Redist 下的 CRT 目录。
打包器逐项校验 Everything 的官方文件哈希与资源版本,仅复制固定的四个分发文件。
项目代码使用 MIT;ZSUI 使用 MPL-2.0,MinHook 使用 BSD-2-Clause。 Everything 及其 PCRE 组件的版权和完整许可见 Everything-1.4.1.1032-License.txt。 其余组件声明见 packaging/licenses/NOTICE.txt。