已安裝服務的資料庫
SCM 會在登錄中維護已安裝服務的資料庫。 SCM 和新增、修改或設定服務的程式會使用資料庫。 以下是此資料庫的登錄機碼: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services。
此金鑰包含每個已安裝服務和驅動程式服務的子機碼。 子機碼的名稱是服務的名稱,如服務組態程式安裝服務時 CreateService 函式所指定。
安裝系統時會建立資料庫的初始複本。 資料庫包含系統開機期間所需的設備磁碟機專案。 資料庫包含每個已安裝服務和驅動程式服務的相關下列資訊:
- 服務類型。 這表示服務是在自己的進程中執行,還是與其他服務共用進程。 對於驅動程式服務,這表示服務是核心驅動程式還是檔案系統驅動程式。
- 開始類型。 這表示服務或驅動程式服務是在系統啟動時自動啟動, (自動啟動服務) ,還是 SCM 在服務控制程式要求時啟動它, (需求啟動服務) 。 啟動類型也可以指出服務或驅動程式服務已停用,在此情況下無法啟動。
- 錯誤控制層級。 如果服務或驅動程式服務無法在系統啟動期間啟動,並判斷啟動程式將採取的動作,這會指定錯誤的嚴重性。
- 可執行檔的完整路徑。 副檔名是針對服務和驅動程式服務的.SYS.EXE。
- 選擇性的相依性資訊,用來判斷啟動服務或驅動程式服務的適當順序。 對於服務,這項資訊可以包含 SCM 必須先啟動的服務清單,才能啟動指定的服務、服務所屬的載入排序群組名稱,以及指出服務在其負載排序群組中啟動順序的標記識別項。 對於驅動程式服務,這項資訊包含必須在指定驅動程式之前啟動的驅動程式清單。
- 針對服務,選擇性帳戶名稱和密碼。 服務程式會在此帳戶的內容中執行。 如果未指定任何帳戶,服務就會在 LocalSystem 帳戶的內容中執行。
- 對於驅動程式服務,選擇性驅動程式物件名稱 (例如\FileSystem\Rdr 或 \Driver\Xns) ,由 I/O 系統用來載入設備磁碟機。 如果未指定名稱,I/O 系統會根據驅動程式服務名稱建立預設名稱。
注意
此資料庫也稱為 ServicesActive 資料庫或 SCM 資料庫。 您必須使用 SCM 所提供的函式,而不是直接修改資料庫。