Repository navigation
Releases: TakaHoshino/BetterRandomNamePicker
Release list
BetterRNP v2.3.3
BetterRNP v2.3.3 密码保护与计时插件更新
本版本新增删除密码功能,并为计时插件加入实时共享透明度设置。
更新内容
- 删除密码:安全设置新增“删除密码”按钮,仅在已设置密码时显示。
- 要求鉴权:配置处于锁定状态时,必须先输入当前密码完成鉴权。
- 风险确认:删除密码前会提示名单、方案和设置可能被未经授权修改。
- 关闭备用通道:删除密码时同步关闭备用解锁通道,避免遗留无效安全配置。
- 恢复安全警告:停用密码保护后,主界面重新显示红色安全警告。
- 状态同步:删除后安全页立即恢复“未设置密码”状态,并隐藏锁定和删除密码按钮。
- 计时插件 1.1.0:在应用“设置 → 插件 → 计时插件设置”中提供透明度滑块。
- 正计时与倒计时共享:同一个连续滑块同时控制两种计时窗口,调整时实时生效。
- 持久化透明度:设置保存在 BetterRNP 注册表的插件设置区域,下次启动继续使用。
- 精简计时窗口:透明滑块只出现在主程序设置页,不再占用计时窗口空间。
兼容性
- 注册表设置结构不变。
- 已有密码、备用通道设置和用户数据继续有效,直到用户主动删除密码。
- 主程序插件 API 和插件 SDK 版本不变。
验证
- Debug 与 Release 构建均为 0 警告、0 错误。
- 自动化测试共 191 项,全部通过。
⬇️ 下载
1. 应用自包含版(推荐,免装环境)
BetterRNP_win-x64_self-contained_v2.3.3.zip(约 63 MB)- 已内置 .NET 8 运行时,无需安装环境,解压后直接运行
BetterRNP.exe
2. 应用框架依赖版(体积小,需装运行时)
BetterRNP_win-x64_framework-dependent_v2.3.3.zip(约 0.5 MB)- 目标机器必须安装 .NET 8 Desktop Runtime
3. 计时插件 1.1.0(单独下载)
com.betterrnp.timer.rnpp- 放入主程序
plugins/目录后,可从悬浮球菜单打开正计时或倒计时
4. 随机性分析插件(单独下载)
com.betterrnp.randomness-analyzer.rnpp
5. 插件 SDK(供插件开发者使用)
BetterRNP.PluginSdk.1.4.0.nupkg
6. 开发签名公开证书
BetterRNP-Development-Certificate.cer
两个应用 zip 功能完全相同,仅打包方式和运行环境要求不同。不确定时下载自包含版即可。
运行环境
- Windows 10 / 11 64 位
- 自包含版:无需任何预装
- 框架依赖版:需安装 .NET 8 Desktop Runtime
更新检查
- 支持启动自动检查与手动检查。
- 支持官方源和
https://gh-proxy.com/镜像源。 - 自动识别当前为 fd 或 sc,并默认选择对应更新包。
BetterRNP v2.3.2
BetterRNP v2.3.2 安全提示精简
本版本精简软件内的备用通道提示,避免在主界面、设置窗口和操作日志中展示具体恢复操作。
更新内容
- 精简安全设置说明:备用通道选项只说明其默认关闭、需要先设置密码并完成鉴权后才能配置。
- 移除具体操作提示:软件界面不再展示备用通道的按键或操作步骤。
- 精简操作日志:成功使用备用通道时只记录通用安全事件,不再记录具体按键操作。
- README 仍可查阅:安全设置保留 README 入口,详细安全说明继续由项目 README 维护。
兼容性
- 可选密码、鉴权、备用通道开关和注册表设置格式不变。
- 已有密码和备用通道设置继续有效。
- 主程序插件 API 与插件 SDK 版本不变。
验证
- Debug 与 Release 构建均为 0 警告、0 错误。
- 自动化测试共 184 项,全部通过。
⬇️ 下载
1. 应用自包含版(推荐,免装环境)
BetterRNP_win-x64_self-contained_v2.3.2.zip(约 63 MB)- 已内置 .NET 8 运行时,无需安装环境,解压后直接运行
BetterRNP.exe
2. 应用框架依赖版(体积小,需装运行时)
BetterRNP_win-x64_framework-dependent_v2.3.2.zip(约 0.5 MB)- 目标机器必须安装 .NET 8 Desktop Runtime
3. 随机性分析插件(单独下载)
com.betterrnp.randomness-analyzer.rnpp
4. 插件 SDK(供插件开发者使用)
BetterRNP.PluginSdk.1.4.0.nupkg
5. 开发签名公开证书
BetterRNP-Development-Certificate.cer
两个应用 zip 功能完全相同,仅打包方式和运行环境要求不同。不确定时下载自包含版即可。
运行环境
- Windows 10 / 11 64 位
- 自包含版:无需任何预装
- 框架依赖版:需安装 .NET 8 Desktop Runtime
更新检查
- 支持启动自动检查与手动检查。
- 支持官方源和
https://gh-proxy.com/镜像源。 - 自动识别当前为 fd 或 sc,并默认选择对应更新包。
BetterRNP v2.3.1
BetterRNP v2.3.1 可选密码与安全提示更新
本版本移除内置默认密码,改为可选密码保护,并将
Ctrl+L备用通道改为默认关闭、鉴权后可控。
更新内容
- 默认不设置密码:新安装首次启动时配置保持解锁状态,不再创建内置默认密码。
- 用户可选设置密码:在“设置 → 安全”中可自行设置密码;设置后,修改受保护配置前需要完成鉴权。
- 旧版默认密码清理:升级时会识别并移除旧版内置默认密码散列,不再要求用户输入已废弃的默认密码。
- 主界面安全提示:未设置密码时,主界面显示红色小字,提醒名单和方案可能被未经授权修改。
- 备用通道默认关闭:
Ctrl+L备用解锁通道默认禁用。 - 鉴权后配置备用通道:只有设置密码并完成解锁后,才能在安全设置中启用或关闭备用通道。
- 备用通道行为:启用并锁定配置后,在密码窗口连续按
Ctrl+L10 次可恢复访问;每次按键间隔不能超过 2 秒,并会写入警告日志。 - 安全设置状态说明:安全页显示当前是否已设置密码,并根据状态显示“设置密码”或“修改密码”。
- README 指引:安全页提供“查看 README”按钮,优先打开 GitHub 在线说明,远程打开失败后回退本地文件。
安全说明
- 不设置密码时,任何能操作当前电脑的人都可以修改名单、方案和设置。
- 建议在共用电脑或正式活动现场设置密码。
- 备用通道会降低密码保护强度,请根据实际恢复需求决定是否启用。
兼容性
- 设置仍保存在
HKEY_CURRENT_USER\Software\BetterRNP\Settings。 - 已有自定义密码继续有效;旧版默认密码会在升级时自动移除。
- 名单、方案、主题图片、插件和日志的数据格式不变。
- 主程序插件 API 仍为
1.0,插件 SDK 仍为1.4.0。
验证
- Debug 与 Release 构建均为 0 警告、0 错误。
- 自动化测试共 184 项,全部通过。
⬇️ 下载
1. 应用自包含版(推荐,免装环境)
BetterRNP_win-x64_self-contained_v2.3.1.zip(约 63 MB)- 已内置 .NET 8 运行时,无需安装环境,解压后直接运行
BetterRNP.exe
2. 应用框架依赖版(体积小,需装运行时)
BetterRNP_win-x64_framework-dependent_v2.3.1.zip(约 0.5 MB)- 目标机器必须安装 .NET 8 Desktop Runtime
3. 随机性分析插件(单独下载)
com.betterrnp.randomness-analyzer.rnpp- 放入主程序
plugins/目录后,通过“插件 → 分析抽取随机性…”打开
4. 插件 SDK(供插件开发者使用)
BetterRNP.PluginSdk.1.4.0.nupkg
5. 开发签名公开证书
BetterRNP-Development-Certificate.cer- 仅包含公开证书,可安全分发
两个应用 zip 功能完全相同,仅打包方式和运行环境要求不同。不确定时下载自包含版即可。
运行环境
- Windows 10 / 11 64 位
- 自包含版:无需任何预装
- 框架依赖版:需安装 .NET 8 Desktop Runtime
更新检查
- 支持启动自动检查与手动检查。
- 支持官方源和
https://gh-proxy.com/镜像源。 - 自动识别当前为 fd 或 sc,并默认选择对应更新包。
BetterRNP v2.3.0
BetterRNP v2.3.0 多语言、统一设置与插件体验更新
本版本重做界面本地化与设置存储,新增插件设置页、悬浮球状态和插件多语言接口,并完善启动清理与插件窗口稳定性。
更新内容
- 完整界面本地化:所有用户可见文本集中到 WPF XAML 资源,C# 代码只引用资源键。简体中文、繁體中文、粵語、English、Русский 和日本語六种语言均完整覆盖 389 个界面文本项。
- 运行时即时切换:切换语言后,已打开的主窗口、设置窗口、插件管理、日志查看器、主题窗口、托盘菜单和插件菜单会立即刷新,不再混用多种语言。
- 方案与模式名称修复:内置方案和三种抽取模式使用当前语言的显示名称,不再向用户展示
name_list等内部 ID。 - 统一注册表设置:语言、托盘、悬浮球、安全、更新、插件启停和主题设置统一保存到
HKEY_CURRENT_USER\Software\BetterRNP\Settings。 - 旧设置自动迁移:首次启动会自动读取
config.properties、theme.properties、update.json和plugins.json;确认写入注册表成功后才删除旧文件和备份。 - 插件缓存清理:启动时在加载插件前清理
data/plugin-cache,避免旧解压文件长期堆积;清理失败不会阻断程序启动。 - 插件设置页:插件 SDK 新增
IPluginSettingsContext,插件可以把 WPF 设置页嵌入主程序的“插件”设置分类。 - 悬浮球状态接口:新增
IFloatingBallStateContext,插件可读取悬浮球位置、尺寸、颜色和可见状态,并订阅实时变化。 - 插件多语言接口:新增
IPluginLocalizationContext,支持插件独立翻译表、语言切换通知以及动态本地化菜单/设置标题。 - 插件窗口稳定性:设置窗口 Owner 前增加安全检查,修复
Cannot set Owner property to itself和无效 Owner 异常。 - 关于窗口:新增独立“关于 BetterRNP”窗口,展示版本、运行时、系统、安装类型和仓库信息。
- 设置页重构:设置窗口改为分类导航,支持常规、语言、界面、更新、安全、日志和插件页面。
设置迁移说明
- 名单、数字范围、座位配置、主题图片、插件包和日志仍保存在程序目录,不会写入注册表。
- 旧设置文件迁移成功后自动删除;若注册表写入失败,旧文件会保留并在下次启动重试。
- 注册表设置结构由
SchemaVersion管理,当前版本为1。 - 卸载程序不会自动删除注册表设置;需要彻底清理时可手动删除
HKEY_CURRENT_USER\Software\BetterRNP。
插件兼容性
- 主程序插件 API 版本仍为
1.0。 - 插件 SDK 升级为
BetterRNP.PluginSdk 1.4.0,新增能力均通过独立可选接口提供。 - 已有
.rnpp插件无需重新编译即可继续使用;使用新接口的插件需引用 SDK 1.4.0。 - 内置随机性分析、计时和示例插件同步支持宿主语言切换。
验证
- Debug 与 Release 构建均为 0 警告、0 错误。
- 自动化测试共 176 项,全部通过。
- 覆盖设置迁移、注册表存储适配、六语言资源、插件加载、悬浮球菜单、主题、日志和更新流程。
⬇️ 下载
1. 应用自包含版(推荐,免装环境)
BetterRNP_win-x64_self-contained_v2.3.0.zip(约 63 MB)- 已内置 .NET 8 运行时,无需安装环境,解压后直接运行
BetterRNP.exe
2. 应用框架依赖版(体积小,需装运行时)
BetterRNP_win-x64_framework-dependent_v2.3.0.zip(约 0.5 MB)- 目标机器必须安装 .NET 8 Desktop Runtime
3. 随机性分析插件(单独下载)
com.betterrnp.randomness-analyzer.rnpp- 放入主程序
plugins/目录后,通过“插件 → 分析抽取随机性…”打开
4. 插件 SDK(供插件开发者使用)
BetterRNP.PluginSdk.1.4.0.nupkg- 包含插件设置页、悬浮球状态和插件多语言接口
5. 开发签名公开证书
BetterRNP-Development-Certificate.cer- 仅包含公开证书,可安全分发
两个应用 zip 功能完全相同,仅打包方式和运行环境要求不同。不确定时下载自包含版即可。
运行环境
- Windows 10 / 11 64 位
- 自包含版:无需任何预装
- 框架依赖版:需安装 .NET 8 Desktop Runtime
更新检查
- 支持启动自动检查与手动检查。
- 支持官方源和
https://gh-proxy.com/镜像源。 - 自动识别当前为 fd 或 sc,并默认选择对应更新包。
BetterRNP v2.2.0
BetterRNP v2.2.0 随机性分析插件与演示模式优化
本版本新增随机性分析插件和插件 SDK 1.1.0,并改进悬浮球在浏览器全屏视频、PPT 放映中的焦点行为。
更新内容
- 随机性分析插件:新增
BetterRNP 随机性分析插件,可对当前方案和当前抽取模式连续抽样,检查各类结果是否均匀、前后结果是否独立。 - 真实候选生成器:分析插件优先调用宿主当前模式的真实候选生成函数,而不是另写一套随机算法;内置模式和插件自定义模式均可覆盖。
- 统计检验:使用 Pearson 卡方频率检验和前后依赖检验,显著性水平为
α = 0.01,并显示统计量、自由度、p 值、观察次数、期望次数和偏差。 - 样本量选择:支持 10,000、50,000、100,000 和 500,000 次抽样;期望次数不足 5 时明确提示结论不可靠。
- 大范围数字处理:候选数字超过 500 个时自动归并为 20 个等宽区间,避免稀疏样本导致卡方近似失真。
- 插件 SDK 1.1.0:新增
ISchemeCommandPluginContext、ICurrentPickerPluginContext和IPluginPickerSnapshot;原有IPluginContext、IPluginModeContext等接口保持不变。 - 插件随包提供:随机性分析插件同时包含在 fd/sc 应用包内,并作为单独的
.rnppRelease 附件提供。 - 悬浮球焦点修复:悬浮球使用
WS_EX_TOOLWINDOW和WS_EX_NOACTIVATE,不再出现在 Alt+Tab 中,也不会从浏览器全屏视频抢走前台焦点或导致任务栏弹出。 - PPT 翻页恢复:主窗口完成抽取并定格结果后,自动恢复 PowerPoint 或 WPS 全屏放映窗口焦点;随后可直接使用 Page Up/Down 翻页笔翻页。
随机性分析解释
- “未发现统计显著偏差”表示当前样本没有足够证据证明存在偏差,不等于数学上证明了绝对随机。
- 发现显著偏差时建议增加样本量后复测,并检查候选列表、数字范围或自定义抽取模式逻辑。
- 卡方检验仍可能发生第一类错误和第二类错误,因此结果应结合实际配置判断。
插件 API 兼容性
- 主程序插件 API 版本仍为
1.0。 - 插件 SDK 包升级为
BetterRNP.PluginSdk 1.1.0,新增接口均为独立可选接口,不修改现有接口。 - 已有
.rnpp插件无需重新编译即可继续使用。 - 随机性分析插件位于应用包
plugins/目录,也可从 Release 单独下载后放入插件目录。
⬇️ 下载
1. 应用自包含版(推荐,免装环境)
BetterRNP_win-x64_self-contained_v2.2.0.zip(约 63 MB)- 已内置 .NET 8 运行时和随机性分析插件,解压后直接运行
BetterRNP.exe
2. 应用框架依赖版(体积小,需装运行时)
BetterRNP_win-x64_framework-dependent_v2.2.0.zip(约 310 KB)- 已包含随机性分析插件,需要 .NET 8 Desktop Runtime:https://dotnet.microsoft.com/zh-cn/download/dotnet/8.0
3. 随机性分析插件(单独下载)
com.betterrnp.randomness-analyzer.rnpp- 放入主程序
plugins/目录后,通过“插件 → 分析抽取随机性…”打开
4. 插件 SDK(供插件开发者使用)
BetterRNP.PluginSdk.1.1.0.nupkg- 包含新增的方案命令、当前抽取模式和候选生成器接口
5. 开发签名公开证书
BetterRNP-Development-Certificate.cer- 仅包含公开证书,可安全分发
运行环境
- Windows 10 / 11 64 位
- 自包含版:无需任何预装
- 框架依赖版:需安装 .NET 8 桌面运行时
更新检查
- 支持启动自动检查与手动检查。
- 支持官方源和
https://gh-proxy.com/镜像源。 - 自动识别当前为 fd 或 sc,并默认选择对应更新包。
BetterRNP v2.1.1
BetterRNP v2.1.1 图标、日志与插件体验更新
本版本补充应用图标与构建签名,完善托盘和插件相关稳定性,并加入结构化操作日志、日志查看器和计时插件示例。
更新内容
- 全新应用图标:新增与宣传 Banner 风格统一的 SVG 图标、多尺寸 PNG 和 Windows
.ico,并接入可执行文件、WPF 窗口和托盘资源。 - 通知区域兼容改进:托盘宿主改用 Windows Forms
NotifyIcon,右键菜单继续使用 Win32CreatePopupMenu/TrackPopupMenu;监听TaskbarCreated,Explorer 重启后自动重建图标。 - 插件管理稳定性:插件列表由
GridView改为DataGrid,避免系统临时目录权限异常导致插件管理窗口无法打开;插件缓存和更新缓存迁移到程序自身的data目录。 - 悬浮球插件菜单:插件 SDK 新增
RegisterFloatingBallCommand,插件命令会随启停状态实时出现在悬浮球右键菜单中。 - 计时插件示例:新增
BetterRNP.TimerPlugin,包含正计时、倒计时、暂停、重置和倒计时完成提示,并支持从悬浮球菜单打开独立置顶窗口。 - 结构化操作日志:日志包含毫秒级时间、级别、操作名和详细参数,支持 1 MB 自动滚动、保留 5 份历史文件,并记录未处理异常。
- 日志查看器:新增“帮助 → 查看日志…”窗口,支持级别筛选、关键字搜索、自动刷新、打开目录、导出和清空。
- 开发签名:提供默认
BetterRNP Development自签名证书生成、信任安装和 Release 自动签名流程;发布包内附带公开.cer证书,不含私钥。 - 构建修复:签名脚本显式加载
Microsoft.PowerShell.Security,兼容 Windows PowerShell 5.1 与 PowerShell 7;移除会误签 DLL 并阻塞普通构建的冗余目标。
自签名说明
- 自签名证书只适合本地开发和当前用户信任环境,不等同于 CA 公开发布证书。
- 两个应用 zip 均已附带
BetterRNP-Development-Certificate.cer,Release 附件也单独提供该证书。 - 如希望本机显示发布者名称,可先执行:
powershell -ExecutionPolicy Bypass -File tools\install-release-cert.ps1 `
-CertificatePath .\BetterRNP-Development-Certificate.cer- 不要分发
.pfx私钥;正式公开分发仍建议使用受信任的 CA 代码签名证书。
兼容性说明
- 主程序数据格式、方案、名单、数字、座位和主题配置保持兼容。
- 现有
.rnpp插件可继续加载;插件 SDK 版本仍为BetterRNP.PluginSdk 1.0.0。 - 插件 API 新增悬浮球菜单命令接口,旧插件无需修改即可继续使用。
⬇️ 下载
1. 应用自包含版(推荐,免装环境)
BetterRNP_win-x64_self-contained_v2.1.1.zip(约 63 MB)- 已内置 .NET 8 运行时,解压后直接运行
BetterRNP.exe
2. 应用框架依赖版(体积小,需装运行时)
BetterRNP_win-x64_framework-dependent_v2.1.1.zip(约 287 KB)- 需要 .NET 8 Desktop Runtime:https://dotnet.microsoft.com/zh-cn/download/dotnet/8.0
3. 插件 SDK(可选,供插件开发者使用)
BetterRNP.PluginSdk.1.0.0.nupkg(约 11 KB)- 可通过本地 NuGet 源引用,详见仓库
README.md与 SDK 包内README.md
4. 开发签名公开证书
BetterRNP-Development-Certificate.cer- 仅包含公开证书,可安全分发
两个应用 zip 功能完全相同,仅打包方式和运行环境要求不同。不确定时下载自包含版即可。
运行环境
- Windows 10 / 11 64 位
- 自包含版:无需任何预装
- 框架依赖版:需安装 .NET 8 桌面运行时
更新检查
- 支持启动自动检查与手动检查。
- 支持官方源和
https://gh-proxy.com/镜像源。 - 自动识别当前为 fd 或 sc,并默认选择对应更新包。
BetterRNP v2.1.0
BetterRNP v2.1.0 插件 SDK 发布
本版本正式提供
BetterRNP.PluginSdk,并让插件构建产物自动打包为.rnpp。
更新内容
- 插件 SDK:新增可分发的
BetterRNP.PluginSdkNuGet 包,包含插件接口、清单模型、API 版本和.rnpp包读取工具。 - SDK 文档:提供插件开发快速说明,明确
IPlugin、菜单命令、自定义抽取模式和plugin.json格式。 - 自动打包:插件项目引用 SDK 后,只要项目根目录存在
plugin.json,每次dotnet build都会自动生成<插件 id>.rnpp。 - 依赖收集:自动收集插件入口程序集、依赖 DLL、资源文件和
.deps.json。 - 安全排除:自动排除宿主
BetterRNP.exe、BetterRNP.dll与BetterRNP.PluginSdk.dll,这些程序集由宿主在运行时提供。 - 两种引用方式:支持 NuGet
PackageReference和仓库内ProjectReference;NuGet 包会自动导入打包目标。 - 构建脚本:
tools/build-release.ps1现在同时生成 fd、sc 应用包和插件 SDK NuGet 包。 - 示例验证:示例插件构建后自动生成
com.betterrnp.demo.rnpp,并已验证可被插件管理器加载、启用、禁用和移除。
插件开发快速开始
<PackageReference Include="BetterRNP.PluginSdk" Version="1.0.0" />在项目根目录放置 plugin.json,实现 IPlugin,然后执行:
dotnet build -c Release打包产物位于插件输出目录:
bin\Release\net8.0-windows\<插件 id>.rnpp
兼容性说明
- 主程序数据格式、插件加载方式和主题配置保持兼容。
- 已有
.rnpp插件无需重新打包即可继续使用。 - 新版 SDK 包位于 Release 附件中,可下载后作为本地 NuGet 源使用。
⬇️ 下载
1. 应用自包含版(推荐,免装环境)
BetterRNP_win-x64_self-contained_v2.1.0.zip(约 63 MB)- 已内置 .NET 8 运行时,解压后直接运行
BetterRNP.exe
2. 应用框架依赖版(体积小,需装运行时)
BetterRNP_win-x64_framework-dependent_v2.1.0.zip(约 154 KB)- 需要 .NET 8 Desktop Runtime:https://dotnet.microsoft.com/zh-cn/download/dotnet/8.0
3. 插件 SDK(可选,供插件开发者使用)
BetterRNP.PluginSdk.1.0.0.nupkg(约 11 KB)- 可通过本地 NuGet 源引用,详见仓库
README.md与 SDK 包内README.md
运行环境
- Windows 10 / 11 64 位
- 自包含版:无需任何预装
- 框架依赖版:需安装 .NET 8 桌面运行时
更新检查
- 支持启动自动检查与手动检查。
- 支持官方源和
https://gh-proxy.com/镜像源。 - 自动识别当前为 fd 或 sc,并默认选择对应更新包。
BetterRNP v2.0.1
BetterRNP v2.0.1 界面与主题更新
本版本优化背景主题的可视化与编辑体验,并让系统设置页的卡片区域透出背景图片。
更新内容
- 透明内容区域:设置页及使用通用卡片样式的界面改为透明背景,仅保留系统边框;主窗口大结果区、数字设置和座位设置结果区也同步透明,背景主题图片可以直接透出。
- 图片库缩略图:图片库由纯文件名列表改为缩略图列表,每项显示预览图、图片名称和边框;损坏或无法解码的图片显示“无预览”。
- 自由裁切:全局背景和按窗口类别区域均新增“裁切…”按钮。
- 拖拽选区:裁切窗口支持在图片上按住鼠标左键拖拽选择区域,可恢复整图、确定或取消。
- 分类裁切:全局图片与各窗口类别可分别保存裁切范围,分类未单独设置时继承全局裁切。
- 自动切换适配模式:应用裁切后自动切换到“自由裁切”模式,并使用裁切后的图像填充窗口。
- 更新检查兼容:继续支持启动检查、手动检查、官方源/gh-proxy 镜像源,以及 fd/sc 安装类型自动检测与更新包选择。
兼容性说明
- 主题配置新增
g.crop与cat.<类别>.crop键;旧版主题配置无需迁移,缺失时默认使用整图。 - 数据、日志、插件和更新设置的位置不变。
⬇️ 下载(两种打包方式,请按需选择其中一个)
1. 自包含版(推荐,免装环境)
- 下载:
BetterRNP_win-x64_self-contained_v2.0.1.zip(约 63 MB) - 已内置 .NET 8 运行时,无需安装任何环境,解压后运行
BetterRNP.exe
2. 框架依赖版(体积小,需装运行时)
- 下载:
BetterRNP_win-x64_framework-dependent_v2.0.1.zip(约 154 KB) - 需要目标机器已安装 .NET 8 桌面运行时(Desktop Runtime)
- .NET 8 Desktop Runtime 下载地址:https://dotnet.microsoft.com/zh-cn/download/dotnet/8.0
两个 zip 功能完全相同,仅打包方式和运行环境要求不同。不确定时下载自包含版即可。
运行环境
- Windows 10 / 11 64 位
- 自包含版:无需任何预装
- 框架依赖版:需安装 .NET 8 桌面运行时
更新检查
- 启动时自动检查 GitHub Releases,也可从“帮助 → 检查更新”或设置页手动检查。
- 下载源支持官方源与
https://gh-proxy.com/镜像源。 - 自动检测当前为自包含版或框架依赖版,并默认选择对应更新包。
BetterRNP v2.0.0
BetterRNP v2.0.0
BetterRNP 的 .NET 8 / C# / WPF 重写版。本版本完成核心功能迁移,并新增
.rnpp插件体系、GitHub Release 更新检查、原生 Win32 托盘菜单和背景主题。
更新内容
- 界面与运行时重写:由 Java Swing 迁移到 .NET 8、C# 与 WPF,窗口标题统一为
BetterRNP。 - 原生 Windows 外观:使用系统字体、系统颜色和 WPF 默认原生控件样式;托盘图标及右键菜单使用 Win32
Shell_NotifyIcon、CreatePopupMenu与TrackPopupMenu。 - 抽取功能:保留名字列表、随机数字、随机座位三种滚停式抽取模式,以及方案、名单、数字范围、座位布局和显式保存流程。
- 数据兼容:继续使用 AES-GCM、SHA-256 与三副本自愈格式;已有 Java 版的名单、数字范围和座位配置可直接读取。
- 安全与配置:保留锁定、改密、默认密码兼容与 PBKDF2 自动升级,以及托盘、悬浮球、开机自启、日志导出和静态图片背景主题。
.rnpp插件管理:新增类似 FuckETS 的表格式插件管理器,支持加载、移除、启用/禁用.rnpp插件;插件可注册主菜单命令和自定义抽取模式。- 检查更新:启动时可自动检查 GitHub Releases,也可从“帮助 → 检查更新”或设置窗口手动检查。
- 双下载源:更新设置支持官方源
github.com与gh-proxy国内加速镜像源,选择会持久化到data/update.json。 - 安装类型检测:自动识别当前运行的是自包含版还是框架依赖版,并默认选择对应的更新包。
- 一键更新:可手动选择自包含版或框架依赖版,显示下载进度,下载完成后自动覆盖程序目录并重启。
兼容性说明
- 原 Java 插件 jar 不能在 .NET 运行时中直接加载,已替换为
.rnpp插件包。 - 插件 SDK 位于
src/BetterRNP.PluginSdk,示例插件位于examples/BetterRNP.DemoPlugin。 - 程序数据、日志和插件仍保存在程序目录下,升级安装包不会覆盖已有
data/与plugins/内容。
⬇️ 下载(两种打包方式,请按需选择其中一个)
1. 自包含版(推荐,免装环境)
- 下载:
BetterRNP_win-x64_self-contained_v2.0.0.zip(约 63 MB) - 已内置 .NET 8 运行时,无需安装任何环境,解压后运行
BetterRNP.exe即可
2. 框架依赖版(体积小,需装运行时)
- 下载:
BetterRNP_win-x64_framework-dependent_v2.0.0.zip(约 150 KB) - 需要目标机器已安装 .NET 8 桌面运行时(Desktop Runtime)
- .NET 8 Desktop Runtime 下载地址:
两个 zip 功能完全相同,仅打包方式和运行环境要求不同。不确定时下载自包含版即可。
运行环境
- Windows 10 / 11 64 位
- 自包含版:无需任何预装
- 框架依赖版:需安装 .NET 8 桌面运行时(见上方下载地址)
更新检查说明
- 检查地址:
https://api.github.com/repos/TakaHoshino/BetterRandomNamePicker/releases/latest - 版本比较:读取 Release 的
tag_name,与当前程序集版本比较 - 下载源:设置窗口可在官方源与
https://gh-proxy.com/镜像源之间切换 - 更新包:设置窗口和更新提示均可选择自包含版或框架依赖版