每次開機,Windows XP都要啟動80多個服務,而一般用戶對這些在後台運行的服務所知甚少。它們究竟是干什麼的?我是否真的需要所有的這些服務?本教程將告訴你哪些服務是必須運行的,哪些服務是不必運行的。開始我們的第一次與windows 服務的親密接觸吧.
在很多應用中需要做windows服務來操作數據庫等操作,比如
(1)一些非常慢的數據庫操作,不想一次性去做,想慢慢的通過服務定時去做,比如定時為數據庫備份等
(2)在.net Remoting中利用windows服務來做Host
利用vs.net我們可以在幾分鐘之內建立其windows服務,非常簡單
下面說一下步驟
1. 新建一個項目
2. 從一個可用的項目模板列表當中選擇Windows服務
3. 設計器會以設計模式打開
4. 從工具箱的組件表當中拖動一個Timer對象到這個設計表面上 (注意: 要確保是從組件列表而不是從Windows窗體列表當中使用Timer)
5. 設置Timer屬性,Interval屬性200毫秒(1秒進行5次數據庫操作)
6. 然後為這個服務填加功能
7.雙擊這個Timer,然後在裡面寫一些數據庫操作的代碼,比如
SqlConnection conn=new SqlConnection("server=127.0.0.1;database=test;uid=sa;pwd=275280");
SqlCommand comm=-new SqlCommand("insert into tb1 ('111',11)",conn);
conn.Open();
comm.ExecuteNonQuery();
conn.Close();
8. 將這個服務程序切換到設計視圖
9. 右擊設計視圖選擇“添加安裝程序”
10. 切換到剛被添加的ProjectInstaller的設計視圖
11. 設置serviceInstaller1組件的屬性:
1) ServiceName = My Sample Service
2) StartType = Automatic (開機自動運行)
12. 設置serviceProcessInstaller1組件的屬性 Account = LocalSystem
13. 改變路徑到你項目所在的bin\Debug文件夾位置(如果你以Release模式編譯則在bin\Release文件夾)
14. 執行命令“InstallUtil MyWindowsService.exe”注冊這個服務,使它建立一個合適的注冊項。(InstallUtil這個程序在WINDOWS文件夾\Microsoft.NET\Framework\v1.1.4322下面)
15. 右擊桌面上“我的電腦”,選擇“管理”就可以打計算機管理控制台
16. 在“服務和應用程序”裡面的“服務”部分裡,你可以發現你的Windows服務已經包含在服務列表當中了
17. 右擊你的服務選擇啟動就可以啟動你的服務了。
問題的關鍵在於實際上我們離不開這些服務,Windows XP的很多功能都是通過這些服務來實現的。簡單地講,你可以把這些服務理解為在後台完成系統任務的程序,比如獲取自動更新或者管理打印任務。與一般應用程序的最大區別是它們都是在“後台”運行的,因此你基本上感知不到它們的存在。