我正在开发一个窗口服务,从那里我必须从位置 Environment.SpecialFolder.UserProfile 访问用户配置文件特定数据。我还必须从这里 HKEY_CURRENT_USER \ Software \ Microsoft \ 访问用户特定的注册表项。
据我所知,如果服务仅按用户安装,那么我只能访问上面的内容。但想象一下网络管理员必须在1000台机器上安装它的场景?
有没有一种方法服务只适用于特定的已安装用户配置文件,而且没有这种烦人的安装?如果服务适用于已安装的用户,我很好,但安装变得烦人。
如果管理员输入了他的密码,那么它也能用于其他配置文件吗?
答案 0 :(得分:0)
就我而言,如果是服务用户,则不需要服务,服务运行完全不依赖于用户文件的后台任务。
如果我是你,我会编写一个在用户会话开始时启动的应用程序(你可以查看this)。您可以通过在C:\ ProgramData \ Microsoft \ Windows \ Start Menu \ Programs \ Startup文件夹中放置一个快捷方式来实现此目的。它适用于PC上的所有用户。您可以通过创建安装包来配置此文件夹的快捷方式安装。
现在您将拥有一个以用户权限运行的进程,只要用户会话正在运行,该应用程序就会运行。