WindowsService 安裝后報錯: 無法啟動計算機“.”上的服務 解決方案


問題 : 根據客戶的需求做了一個小程序,需要有對WindowsService 安裝,卸載,啟動,停止的操作。

編譯好之后在我的工程內直接Run 沒問題。直接在\bin\Debug 點小程序運行,任何操作也沒問題。

由於客戶要求免安裝。

於是我把Debug 文件夾拷到桌面上運行,其他功能都ok,但是涉及到WindowsService的時候啟動總是報錯:“無法啟動計算機“.”上的服務”。

追錯思路:
於是桌面上程序的安裝好了服務之后:1。用bin文件夾下的程序來啟動也是這個錯;2,用工程直接跑起來啟動也是報這個錯。

於是把服務卸載。用工程跑起來或者bin文件夾下安裝好服務,然后分別用桌面上的程序啟動,沒問題。其他操作也都正常。

於是斷定 在桌面上的程序安裝服務的時候出了問題。但是到底是出了啥問題,偶是百思不得其解,到網上搜,也找到解決方法。
在此請各位路過的大俠集思廣益,幫小妹解決這個麻煩。
不勝感激。
補充一下,手動啟動時也是報這個錯誤,沒有多余的錯誤信息了,╮(╯▽╰)╭。

個人感覺是權限分配的問題,但又不知如何下手。先自己搗鼓搗鼓去。

 

 

 

哎,問題解決了,但原因還不清楚到底為什么,等有空了再回來研究研究。

解決方法:把桌面上的目錄移到D盤根目錄(或者其他正常的目錄應該也可以)就可以了。

 

 

 

一般是賬戶權限的問題,你放服務應用程序的folder沒相應權限

 

 

今天在客戶這發布后又出現了這個問題,仔細研究了一下,發現在安全里,把Authenticated Users這個用戶添加上就不報錯了。問題又來了,怎樣在代碼里把權限加上呢

 

 

目前終於算是把這個問題給清了,解決方式是,調用安裝方法之前在程序里調用dos命令:
 CACLS Comm.dll /G Everyone:F 
緊跟着再輸入一個Y,權限就賦好了。

煩了我這么長時間的一個問題終於解決了,分一下分,以示慶祝。\(^o^)/

 

 

參考:  http://bbs.csdn.net/topics/340228918 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM