How to create Windows Service Application in .NET 8 by BackgroundService (2)
接續前一篇 "如何在 .NET 8 建立基於 BackgroundService 的 Windows Service 應用程式 (1)" 的內容.
思考以下情境, 如果該程式是在使用者登入時, 以 Console 模式執行, 那麼在 Windows 10 的工作列上, 是否就很容易被使用者看到, 而去把它關掉. 過程可參考 [附錄一].
因此, 筆者想到以前在 Windows Form 有一個叫作 TrayIcon 或 NotifyIcon 元件或類別, 可以將應用程式以圖示的方式, 存放在工作列(Task Bar) 的通知區(Notification Area) 或系統匣(System Tray).
本文將以前述程式碼為基礎, 添加 NotifyIcon 的功能, 以使整個程式, 得以同時支援 TrayIcon / Console / Windows Service 的使用方式.
一. 開發過程
二. 發行為單一執行檔
三. 以 TrayIcon 模式執行
四. 以 Console 模式執行
五. 以 Windows Service 模式執行
附錄一: 將 JokeWorkerService 放在登入時執行