none
Windows Service在開機自動啟動時失敗﹐請問是什麼原因? RRS feed

  • 問題

  • 我寫一支Windows Service﹐目的只是由這個service去啟動另一隻WinForm的程式。
    Service(ProcessService.exe)程式和WinForm(ProcessRun.exe)程式是放在同一個資料夾之下

    protected override void OnStart(string[] args) {
         AppPath = Assembly.GetExecutingAssembly().Location;
         AppPath = AppPath.Substring(0, AppPath.LastIndexOf("\\"));
         execFile = AppPath + @"\ProcessRun.exe";

         Process.Start(execFile);
    }

    當我使用installUtil將service安裝之後﹐在服務有看到﹐並且將這個service 啟動﹐service能正常的將另一支WinForm(ProcessRun.exe)呼叫執行。

    這個Service我設定為自動啟動﹐結果當我重新開機卻服務卻執行失敗了﹐在事件檢視器中出現了兩個錯誤訊息。

    第一則
    ProcessService 服務連線的等候逾時 (30000 毫秒)。

    第二則
    ProcessService 服務宣告失敗,錯誤原因:
    服務並未以適時的方式回應啟動或控制請求。 

    不過﹐開機後我手動去執行卻仍然沒有問題。請問到底是那裏出現錯誤呢?

     

    另外﹐順便請問﹐我使用installUtil安裝service﹐能否一併設定這個service安裝之後是"允許服務與桌面互動"﹐每次重新安裝後都要再一次到服務裏做設定﹐有些麻煩。

    2006年11月17日 上午 07:00

所有回覆

  • 我這問題﹐可能是作業系統平台的問題吧﹐我上述的情況是在Win 2000 Professional的時候發生的﹐我拿到另一台Win2003 Server安裝﹐倒是沒有問題﹐不知道在開發windows service時對於不同的作業系統平台要有什麼特別要注意的....
    2006年11月18日 上午 03:02
  • 本人認為你須要的並不是一支Windows Service。
    我猜,你要的是一支在開機時會自重執行某應用程式的須求。就像在Tackbar上的小圖示在開機後就啟動,並在點選小圖示選單後帶出winform畫面。
    若是如此,windows service不是一個好解。而是如何自動啟動應用程式才是。
    2009年4月13日 上午 01:34