要改變Windows服務的啟動順序

來源:互聯網
上載者:User

要改變Windows服務的啟動順序,只要修改Windows的註冊表就可 以了。任何Windows服務的註冊資訊可以在註冊表的HKEY_LOCAL_MACHINE\
SYSTEM\CurrentControlSet\Services\<Service Name>\鍵下找到。下面就介紹幾個與服務啟動順序相關的服務的值:

  Group值:一個REG_SZ類型的值。它用來描述服務屬於那一個服務組。如果服務沒有這一項,那麼它不屬於任何一個服務組,系統則會預設的將其在所有的服務啟動後載入。

  Tag值:一個REG_DWORD類型的值。它用來描述服務的標識。每一個在服務組中的服務都會被分配一個唯一的標識。註冊表通過對服務組的服務識別的排列來安排,同一服務組中的個服務的載入先後順序。

  那麼,如何改變服務的啟動順序,現在就被分為了兩個步驟,一是:改變服務組的啟動順序。二是:改變服務組中各服務的啟動順序。

  先來介紹第一步:註冊表的HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\ServiceGroupOrder鍵的List值中儲存了表示服務組啟動順序的資訊。每一個服務組都是一個字串,通過字串在值中排列的先後位置表示服務組被載入的先後順序。要想改變服務組的載入順序,只要改變它們的位置就可以了。方法:用Regedit32.exe(不是,Regedit.exe,因為,在這裡雙擊List值後,只能看到十六進位的資料,不便於修改。)開啟該值,這是一個字元編輯環境,改變裡面的組的先後順序,然後確定改動。服務組的啟動順序就搞定了。

  第二步:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GroupOrderList鍵下有各服務組中各服務啟動順序的資訊。每個服務組資訊都被儲存為了一個REG_BINARY類型的值,如:Pointer Port 服務組的值為030000000200000001000000030000000。下面為了方便觀察,我們把它處理為03000000 02000000 01000000 030000000 它表示Pointer Port 服務組有三個服務,TAG值為2的服務先載入,然後是TAG值為1的服務,最後是TAG值為3的服務載入(資訊解讀的順序是從左至右)。要改變服務在組中的載入順序,只要編輯這個二進位串就可以了。

  另外,我們還可以通過ChangeServiceConfig API或者sc.exe程式(Windows 2000 Resource Kit包中的工具)來改變服務的載入順序。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.