如果想讓自己的應(yīng)用程序在2003服務(wù)器登錄前運(yùn)行,除了寫底層的vxd驅(qū)動(dòng)外,似乎只能做成系統(tǒng)服務(wù)。而默認(rèn)安裝好的Windows 2003又沒有提供制作成系統(tǒng)工具的服務(wù)器。如果強(qiáng)行修改注冊(cè)表加入,很有可能啟動(dòng)失敗。怎么辦,當(dāng)然是Google一下。
原來微軟提供了一個(gè)名為Windows 2003 Resource Kits的包,里面有各式各樣奇奇怪怪的小工具,其中有兩個(gè)就是用來將普通程序變成系統(tǒng)服務(wù)器的。一個(gè)稱為instsrv.exe,另一個(gè)喚作srvany.exe。
下面開工,先裝好資源包。假設(shè)我們的程序名為chatServer.exe,我需要它成為系統(tǒng)服務(wù)器,在系統(tǒng)啟動(dòng)但是未登錄的情況下運(yùn)行……
控制臺(tái)下鍵入命令
1
|
instsrv chatServer d:\chat\chatServer.exe
|
將其注冊(cè)為系統(tǒng)服務(wù),進(jìn)入管理工具的服務(wù)中查看,多了一項(xiàng)chatServer。嘗試啟動(dòng),如果你能正常啟動(dòng)它,OK。如果啟動(dòng)失敗,則表明我們的程序不太適應(yīng)系統(tǒng)服務(wù)這種東西。沒關(guān)系,微軟提供了一個(gè)srvany.exe的東東,從名字就看得出來,它可以將任何程序變成系統(tǒng)服務(wù)。
1.進(jìn)入注冊(cè)表,找到HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\chatServer,把ImagePath的內(nèi)容改為指向srvany.exe,如“d:\tools\srvany.exe”
2.新建Parameters項(xiàng)目,添加application子鍵,內(nèi)容為應(yīng)用程序的路徑,如:d:\chat\chatServer.exe
3.回到進(jìn)入管理工具的服務(wù)中,啟動(dòng)chatServer, All done。
4.別忘了將該服務(wù)器改為自啟動(dòng)。
如果你仍然搞不定的話,推薦一個(gè)專干這個(gè)事情的軟件Firedaemon.com,咱也是失敗了很多次,后來用這個(gè)軟件搞定的,囧。不過公司的服務(wù)器都是Linux和FreeBSD了,哪天有錢買服務(wù)器后CoCo也把自己的服務(wù)器搞成Linux,windows的服務(wù)器實(shí)在是太不好用了……