- 系统托盘: NotifyIcon 常驻, 程序化生成 32x32 图标, 左键切换显示/隐藏, 右键菜单(显示主界面/设置/彻底退出) - 窗口关闭拦截: OnClosing 取消关闭改为 Hide(), 退出菜单执行真实 Shutdown() - 开机自启: AutoStartHelper 写入/删除 HKCU\...\Run 注册表项, UI 开关按钮显示 ✔/⊗ 状态 - 静默启动: -autostart 参数下 mainWindow.Hide() 直接最小化到托盘 - 类型冲突解决: ImplicitUsings=disable + GlobalUsings.cs 统一全局 using, 消除 WPF/WinForms 共享类型冲突 - 测试: 75 tests total (含 AutoStartHelper 2 tests)
23 lines
474 B
C#
23 lines
474 B
C#
using PersonalToolBox.Helpers;
|
|
|
|
namespace PersonalToolBox.Tests.Helpers;
|
|
|
|
public class AutoStartHelperTests
|
|
{
|
|
[Fact]
|
|
public void SetAutoStart_Disable_NoExceptions()
|
|
{
|
|
// 确保不抛异常
|
|
AutoStartHelper.SetAutoStart(false);
|
|
}
|
|
|
|
[Fact]
|
|
public void SetAutoStart_Enable_NoExceptions()
|
|
{
|
|
// 确保不抛异常
|
|
AutoStartHelper.SetAutoStart(true);
|
|
// 清理
|
|
AutoStartHelper.SetAutoStart(false);
|
|
}
|
|
}
|