本帖最後由 fatie 於 2009-5-16 13:31 編輯
( E1 D/ o" u: C% ]' S. J3 f
2 @% I d% }# A今天有個網友在QQ群裡問了一個這樣的問題:
$ S" N7 s# j, A: }誰對微軟的那個服務工具比較熟悉?我有一個程序,包含3個exe文件,我現在能把他們3個都做成後台自動服務方式,可是這3個進程的啟動順序有先後之分,我如何設置他們的啟動順序?
: g, _3 z( n' J+ o. w- f0 T, C! P我知道用WINDOWS服務的依賴關係,可以實現這個功能。但我不會添加這個依賴服務,於是在網上找了一下,下面把我的研究成果供享一下。# t, B s/ G9 R* }- v$ e) v
第一種方法:添加註冊表7 p1 G$ I# G6 @- Q7 M5 }/ V
如果你要為一個服務配置依賴的話,請打開註冊表編輯器,然後按照以下的步驟打開,其中使你要延緩啟動的服務名稱:8 l7 W9 n, I3 J
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\" o Y, z4 s8 d/ O
在這個鍵值中,添加一個名字為DependOnService的REG_MULTI_SZ的值。然後,對DependOnService值來添加你要在此服務之前啟動的服務名。如果你不知道要指定哪些服務的話,你就指定Spooler或是Messenger服務,因為他們一般都比較後啟動。* \9 d# ]1 W! t1 N4 ]
在你在設置服務依賴的時候,要注意不要建立循環依賴關係——兩個服務互相依賴。這樣的話會使得這兩個服務都永遠無法啟動。/ G$ H' F5 c! [& s& k% u
注意:在你對註冊表進行編輯之前,請先備份註冊表文件,如果註冊表出錯的話,你可對其進行恢復。( P. z# D5 z: c2 y! J, c, U
第二種方法:使用SC工具- x _% K& W! i4 X3 I, c5 J
要使用SC工具需要安裝Windows Support Tools,WINDOWS2000自帶的SC沒有添加依賴服務的功能。所以你要使用XP或2003的Windows Support Tools功能。
- M; n, M: b R" x8 h例如給BITS服務添加的依賴服務是RPCSS和EVENTSYSTEM,可以使用如下命令:' n2 k: o y* l3 l
sc config bits depend= rpcss/eventsystem
5 m# x7 D. h3 T' @/ o- ]windows下按順序啟動服務方法
7 J; \) |! |# j8 ?$ P小提一下:<此處被編輯,請勿附帶廣告,謝謝配合。——fatie> |
|