预先,这个问题与设计解决方案有关,没有代码可以分享
我正在.net 4.0(一种系统监视器)中设计一个 C# 桌面应用程序,其行为如下
- 应用程序在用户登录到 Windows 桌面时启动(并且仅在用户登录时)。
- 在整个用户会话中定期运行。
- 在用户桌面上显示系统托盘图标。
- 单击托盘图标将打开一个显示一些信息的窗口(具有丰富的用户体验)
- 用户注销时存在应用程序
- 此应用程序可能会在启动时保存其状态并存在(可能到系统注册表)
- 需要访问网络和文件系统等系统资源
我的偏好将:
- 在后台运行的 Windows 服务,它执行周期性的后端操作和网络访问。此服务还应向前端 (UI) 轮询信息,该信息在系统托盘图标(气球提示)中显示为警报
- 向用户显示信息的 Windows 应用程序 - 通过单击托盘图标打开
以上考虑是基于我使用 .net 版本 1.1 进行 Windows 应用程序开发的经验。
但是,现在我在 .net 4.0 中开发并针对 Windows Vista 和 Windows 7 平台。
我对最新趋势不太熟悉,我的问题是:-
1. 听说不推荐使用与桌面交互的windows服务?
2、是否推荐使用WPF来开发这个应用的UI?
3.还有其他简单的解决方案或模式吗?