Windows服務初探

來源:互聯網
上載者:User
Windows服務是獨立於登入使用者而工作的Windows應用程式,它通常在電腦啟動時開始執行,且常常連續執行,直到電腦關閉為止。像Exchange Server,IIS和殺毒軟體等都使用這種方式,這樣就可以獨立於某一使用者而且可以在任何使用者登入前來運行,同時也可以服務於所有的進程,從而以一種服務的形式存在。
正因為Windows服務有著這麼多的特性,因此,當需要一些特殊功能的時候就可以考慮使用Windows服務來解決問題。比如下面我們要做的這個例子。對於我們這些程式設計人員,電腦是在一起工作時間最長的夥伴,每天都會對著它的螢幕八個小時以上,還不包括下班後在家打遊戲的時間,因此,保護眼睛是最重要的了。問題的起因來源於本人周六去眼科對雷射手術的複查,大夫一再向我強調眼睛的自我調節能力,就是說只要你能保證你每隔一個小時左右就閉眼休息或向遠處眺望,離開電腦螢幕,那麼已經治好的近視就不會反彈。本人雖是自律性比較強的人,但在電腦螢幕面前就不再如此了,往往幾個小時也不抬頭一次,為了眼睛的健康,我決定把這個艱巨的任務交由電腦來完成,讓它在一小時左右自動提醒我休息五分鐘。如此一來,豈不是再也不用顧慮這件事了。
功能雖然簡單,但要寫個程式放在啟動組裡每天自動運行也不是一個好的辦法,正巧以前也沒做過Windows服務,不如索性來試一試,同進也看看.NET為我們提供了多麼先進的功能吧,於是決定,就用C#來做一個提醒我保護眼睛的Windows服務,取名就叫CareEye吧。
運行Visual Studio.NET 2003,建立一個C#的Windows服務項目,在CareEye.cs的設計檢視提示可以把需要的控制項和組件拖動到這上面,假如想要做系統日誌的話當然就可以把EventLog組件拖過來了,不過這個程式好像不需要這些東西,還是算了吧。那麼計時要不要採用計時器控制項呢?想了一下,這個控制項雖然好用,但太常用了,本著學習新知識的原則,最恰當的恐怕就是線程了,而且在以後做其他Windows服務的時候線程肯定是必需的,所以還是用線程好,這樣我只要線上程中完成對時間的監測,把線程的啟動和停止交給服務的啟動和停止,呵,很方便啊。
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.