我正在开发一个涉及智能卡(数字签名)的应用程序。让我们假设我们在这两种环境相同的代码: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