1

我有一个提供多种功能的 UI 应用程序 (<800KB)。我想让它最小化到系统托盘,并继续解码来自串行端口的数据并发送网络消息。

我可以简单地隐藏主窗体并在系统托盘中创建一个 NotifyIcon,还是对系统托盘应用程序有其他考虑?应用程序在隐藏时是否使用更少的资源?还是最好为系统托盘制作一个轻量版的应用程序(带有重复代码)?

我的应用程序执行 2 个不同的应用程序执行的操作(相关功能)。在完成编码之前,我试图预见其影响。

4

2 回答 2

2

我编写了几个使用 NotifyIcon 的应用程序。将其放在通知区域(系统托盘)中并没有什么特别之处。它不再在工具栏上可见。

于 2010-09-02T02:23:01.397 回答
1

在您的情况下,IMO 最好的方法是制作 Windows 服务,该服务将解码来自串行端口的数据并发送消息。和其他只会设置首选项和观察服务状态的 winforms 应用程序,可以进入托盘。也许你真的不需要这个托盘应用程序,只需要 windows 服务,你可以通过配置文件设置首选项并通过 EventLog 观察状态。

当然,如果可以从 Windows 服务运行,例如。您的串行端口和网络代码不需要登录用户或桌面。

于 2010-09-02T02:53:06.297 回答