2012-05-07 21 views
0

我創建了一個Windows服務,基本上,除非一個用戶登錄到機器的上是不會運行一個文件觀察者。的Windows servce將無法運行,如果沒有用戶登錄到服務器

服務是Windows Server 2003的計算機上運行。它旨在監聽文件夾中的excel文件。當有一個excel文件時,它開始發送一些信息到一個web服務。完成後,它將處理後的文件複製到歸檔文件夾。

任何人都可以幫助我嗎?

問候 巴里斯

+0

不,沒有人可以幫助您。你必須更好地描述問題,給我們一些代碼,你的服務與桌面交互,用戶acc在你的服務下運行等 –

+1

哪個用戶帳戶是服務運行的?什麼是你收到的錯誤信息? Windows事件日誌中有什麼? –

+0

你的問題是什麼?你的意思是(1)服務應該只在用戶登錄時運行,並且你需要知道如何去做;或者(2)服務應該在沒有人登錄時運行,但沒有? –

回答

1

運行它作爲有權限登錄爲機上服務的用戶。確保此用戶有權訪問您所觀看的目錄。

0

我一直在那樣的情況下做的就是給用戶登錄爲批處理作業,並作爲服務登錄權限。
這2箇中的1個很可能會解決您的問題。
描述here您可以在本地組策略編輯器配置此

注意的是,如果你的電腦是在一個域中有可能是組策略被髮布到服務器每隔15分鐘,所以你可能不得不談到系統管理員來分類。

0

當你真正只想當有人登錄到運行,不使用的服務,但在這種情況下自動啓動應用程序。

如果你必須要,因爲帳戶權限的服務,該服務可以檢測當前登錄本身,而是你可以與連接到服務的客戶機(自動啓動)應用相結合的服務。這樣,您還可以顯示托盤incos,狀態信息並使用戶能夠使用客戶端應用程序控制您的服務。 使用Win7及更高版本,服務本身(在會話0中運行)不能再在用戶的桌面上顯示UI交互。

請記住,可能有多個用戶在當前操作系統上登錄...

+0

哦,我真的想爲什麼我得到這個downvote,所以我可以提高我的回答(甚至刪除,如果我誤解的東西...) – eFloh

+0

我沒有downvote,但同時具有服務和自動啓動的應用程序是不必要的。如果您有服務,它可以檢測登錄本身。 – arx

+0

我懷疑OP可能希望他的服務在沒有人登錄時工作,並詢問爲什麼沒有登錄。不過,你的解釋同樣有效,所以我請他澄清。 +1發現歧義! –

相關問題