我在Windows服務中使用捕獲屏幕所有代碼都以win形式正常工作,但在返回黑色圖片的win服務中正常搜索並且找到this並嘗試查找「允許服務與桌面交互」(在服務屬性中),但沒有任何具有該名稱的屬性。有什麼想法嗎?我如何/在哪裏可以找到它?我使用Windows Server 2008 R2 SP1和VS2010和C#4,如果在這個版本中沒有任何屬性,我該怎麼辦?查找「允許服務與桌面交互」在Windows服務中檢查(在服務屬性中)
回答
要設置此屬性,您必須打開Windows服務管理,右鍵單擊您的服務並打開屬性。之後選擇「登錄」選項卡。當您的服務在本地系統下運行時,您可以選擇「允許服務與桌面交互」。
Windows XP!那是十年前的事了。該複選框不起作用了。現在是升級到Windows的現代版本的時候了。 – 2011-12-22 12:58:38
...在windows7上也是這樣的作品 – 2011-12-22 12:59:14
@lmw你可以選擇win 7上的那個盒子,它只是不會做你認爲的事 – 2011-12-22 13:00:36
該設置是一個傳統的設置,不會解決你的問題。從Vista開始,您的服務無法訪問交互式桌面,您需要從交互式桌面上運行的標準應用程序執行屏幕捕獲。
您可以使用IPC機制在您的服務和桌面應用程序之間進行通信。您可以從服務中啓動此桌面應用程序,但要做到這一點相當棘手,正如解釋here。
檢查「允許服務與桌面交互」僅僅意味着您可以調用交互式API函數而不會出錯。您無法訪問inreractive桌面。這個問題都源於Vista中引入的變化,意味着服務在隔離的會話中運行,會話0.
- 1. 如何爲Web服務「允許服務與桌面交互」?
- 2. 在安裝時設置'允許服務與桌面交互'爲新創建的Windows服務
- 3. 如何調試從Windows服務運行的Firefox,但無法設置「允許服務與桌面交互」
- 4. 從windows服務運行exe,與用戶桌面交互
- 5. 在Java中按服務名稱檢查服務可用性?
- 6. 允許配置Windows服務
- 7. wcf windows服務交互
- 8. 如何在windows服務安裝程序中設置「與桌面交互」
- 9. 通過Windows服務在Windows服務器上檢查服務狀態在Ubuntu服務器上
- 10. Windows 7遠程桌面連接與FTP服務衝突服務?
- 11. 與運行的Windows服務交互?
- 12. 如何配置Windows Server 2012 R2以允許交互式服務?
- 13. WCF服務與Windows服務
- 14. 在Windows 7中,vnc服務器的「服務」如何繞過會話0隔離(無桌面交互)?
- 15. 服務結構:在ServiceManifest.xml中允許多種服務類型
- 16. 檢查服務與win32_service時
- 17. Windows服務查詢
- 18. 在Windows服務中調用Web服務
- 19. Android服務交互
- 20. windows服務如何互相交互?
- 21. 檢查服務fsockopen()
- 22. 在SLAPD中允許LDAPS服務
- 23. ASP.Net Web服務不允許Windows服務調用函數
- 24. 如何從服務中檢查新的android 6.0允許
- 25. 與windows服務交談
- 26. 在回發中查找非服務器控件屬性值?
- 27. windows服務canStop屬性
- 28. 在Azure中查找服務名稱?
- 29. 與服務互動
- 30. Windows 7快捷方式服務和不同服務在Windows中查看
可能的[windows服務(允許服務與桌面交互)]的重複](http://stackoverflow.com/questions/ 4237225/windows-service-allow-service-to-interact-with-desktop) – 2011-12-22 13:00:57
這裏要問的真正問題是爲什麼[你認爲]你首先需要Windows服務。是的,您可以使用David的解決方案,並試圖讓IPC在標準的用戶模式應用程序和服務之間進行溝通,但幾乎沒有任何意義。只需創建*不顯示窗口的標準Windows應用程序*。從您的角度來看,您將擁有一項服務的所有好處,而不受限制。這確實是一個非常專業化的案例,其中有人確實需要Windows服務。我不知道爲什麼每個人都認爲他們這麼做。 – 2011-12-22 13:04:09