我正在開發一個涉及智能卡(數字簽名)的應用程序。讓我們假設我們在這兩種環境相同的代碼:Windows服務和控制檯應用程序之間的權限差異
- 控制檯應用程序,由管理員用戶執行
- Windows服務,由管理員用戶
我suposed執行,如果這兩個代碼分別爲由同一用戶執行,他們將擁有相同的權限。看起來這不是真的。當我嘗試使用Windows服務(已執行與管理員用戶)我收到
TargetInvocationException
CryptographicException
Can't initialize DLL provider at System.Security.Cryptography.Utils.CreateProvHandle(.
至於我的互聯網上閱讀,也許是權限問題的一些國王。控制檯應用程序正常。
如果Windows服務和控制檯應用程序由同一用戶執行,它們之間的區別是什麼?
是否可以通過Windows Service實現相同的結果?
免費虛擬啤酒對誰解決它的人;)
謝謝!
好的,謝謝布蘭迪,工作! :)。問題是我不知道爲什麼。我更改爲其他用戶,因爲網絡服務無法訪問證書。在某些方面,我不明白,證書已在文件夾中結束: - c:\ windows \ system32 \ config \ systemprofile \ application data \ microsoft \ systemcertificates \ my \ certificates 像這個文件位於那個文件夾可以與本地服務工作,我沒有得到錯誤:? - 在System.Security.Cryptography.Utils.CreateProvHandle(無法初始化DLL提供商 有人知道這個文件夾中如何結束 感謝布蘭迪! – user256038 2010-06-14 10:10:53