国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > OS > Win2000 > 正文

如何用Delphi編寫Win2000服務程序

2024-09-08 18:09:23
字體:
來源:轉載
供稿:網友

如何用Delphi編寫Win2000服務程序:

一、Win2000服務簡介

  服務程序(Service Application)是一種運行于WinNT的后臺程序,每個服務程序(Service Application)中可能包含若干個服務(Service),每個服務就是其中的一個線程(該服務也可以創建多個子線程)。采用服務,應用程序可以獲得特殊的權限,而且不會被用戶通過Win2000的任務管理器直接結束程序,所以服務常常用來實現一些特殊的目標。

  通過Win2000控制面板中的服務管理工具,我們可以設置/查看服務的特性:

  (1)服務名稱;(2)顯示名稱;(3)描述;(4)啟動類型;(5)依賴關系;

  其中,服務名稱是標識給服務的。

  以Win2000的C:/WINNT/System32/services.exe程序為例子,該exe文件對應一個Service Application,是該服務程序的可見實體;該exe中包含多個服務(Service),例如Alerter,Dhcp(DHCP Client),Messenger等。當我們結束一個服務的時候,該服務所在的Service Application中的其他服務并沒有被終止。

  在Delphi中,Borland的工程師為我們提供了TServiceApplication,TService,TServiceThread等類,封裝了大量細節,簡化了服務程序的開發。

二、TServiceApplication

  在Delphi中,類TServiceApplication就對應上述的ServiceApplication。利用Delphi的開發環境,我們新建一個Service Application Project,同時就創建了一個繼承自TService的類。項目文件中的Application對象就是一個TServiceApplication實例。每個TServiceApplication包含若干個TService對象,正好對應上述的服務程序和服務之間的數量關系。

  通過閱讀TServiceApplication和TService類的定義,可以得知,TServiceApplication從TComponent類繼承而來,TService從類TDataModule基礎而來,Application對象負責各個TService對象的Create和Destroy。跟蹤下列代碼

  Application.CreateForm(TService1, Service1);

  可以發現創建的TService對象的Owner都是Application對象;在VCL FrameWork中Owner總是負責Destroy各個Component對象(VCL的TComponent類采用了Composite模式),所以TServiceApplication也將Destroy各個TService對象。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 临沭县| 龙南县| 廉江市| 朔州市| 济南市| 肥乡县| 奈曼旗| 东莞市| 乌兰察布市| 扶绥县| 习水县| 武汉市| 宁城县| 清徐县| 岳西县| 同德县| 武城县| 兴安县| 嘉义县| 祁东县| 明溪县| 拉孜县| 水城县| 蒙自县| 铜梁县| 合山市| 沭阳县| 彭水| 永登县| 元朗区| 哈巴河县| 武邑县| 磴口县| 绩溪县| 聂荣县| 上虞市| 泸溪县| 滨州市| 南安市| 日照市| 潞西市|