有一組程序還有幾個腳本,要從普通程序改為服務運行,其實是后臺運行,不要彈出界面來。
本來想改程序,寫成服務程序,想了想還是簡單地用一個服務程序來調用算了。
正好看到一篇XYNTService的文章,正合我意。
XYNTService本身是個服務程序,它可以在INI文件中配置調用的程序,將多個程序運行起來。
但是有些服務程序的通常的限制,按缺省的系統服務運行可以有界面,但是不能訪問網絡映射盤。
若是以其它網絡用戶運行程序,就不可能有界面。
當然,我的應用正好不需要界面,在配置里設定無交互界面顯示就好。
Windows的服務程序必須有一套管理接口,這點有些煩,一個程序必須從開始就按服務編程。不像Linux上的程序,后臺運行就是服務了。
MS Windows 2000 SDK工具中有個srvany,好象就是能讓任一個普通程序運行為服務,有了它就像有了Linux上的nohup一樣了。不過我沒用這個,也沒有仔細研究,因為XYNTService是有源代碼的,更符合我的心意,而且足夠符合我的需求。
有了這個工具,以后就可以大膽地寫腳本了,不必理會是服務還是普通程序了。
參考:
[1] 從NT服務啟動Windows程序
[2] Start Your Windows Programs From An NT Service
[3] 使用srvinstw和srvany讓程序加入到系統服務的方法
本來想改程序,寫成服務程序,想了想還是簡單地用一個服務程序來調用算了。
正好看到一篇XYNTService的文章,正合我意。
XYNTService本身是個服務程序,它可以在INI文件中配置調用的程序,將多個程序運行起來。
但是有些服務程序的通常的限制,按缺省的系統服務運行可以有界面,但是不能訪問網絡映射盤。
若是以其它網絡用戶運行程序,就不可能有界面。
當然,我的應用正好不需要界面,在配置里設定無交互界面顯示就好。
Windows的服務程序必須有一套管理接口,這點有些煩,一個程序必須從開始就按服務編程。不像Linux上的程序,后臺運行就是服務了。
MS Windows 2000 SDK工具中有個srvany,好象就是能讓任一個普通程序運行為服務,有了它就像有了Linux上的nohup一樣了。不過我沒用這個,也沒有仔細研究,因為XYNTService是有源代碼的,更符合我的心意,而且足夠符合我的需求。
有了這個工具,以后就可以大膽地寫腳本了,不必理會是服務還是普通程序了。
參考:
[1] 從NT服務啟動Windows程序
[2] Start Your Windows Programs From An NT Service
[3] 使用srvinstw和srvany讓程序加入到系統服務的方法


