我目前正在创建Windows服务应用程序,该应用程序将监视对HKEY_USERS注册表中某些键所做的更改.我这样做的方法是收集当前用户的SID.我遇到的问题是由于当前作为本地系统运行的服务,它返回了管理员SID.我需要系统执行的...
我目前正在创建Windows服务应用程序,该应用程序将监视对HKEY_USERS注册表中某些键所做的更改.我这样做的方法是收集当前用户的SID.我遇到的问题是由于当前作为本地系统运行的服务,它返回了管理员SID.
我需要系统执行的操作是收集并返回当前登录用户的SID(这并不意味着本地服务,本地系统或网络服务,而是通过GINA登录Windows的人),所以我需要服务将以该用户身份运行.这也将允许该服务写回用户网络驱动器,这是此程序的目的.
我遇到的问题是,当我尝试使用installutil.exe安装用户服务时,它会要求输入用户名和密码,而现在我已经尝试了自己的凭据(我有一个admin和非admin帐户),但是没有拥有其中的任何一项,我希望用户根据登录的人进行更改,而不要固定下来.有什么办法吗?
解决方法:
这一切似乎有些混乱.可以有许多人通过远程桌面等登录.如果您作为服务者想查看其注册表,则绝对不会通过HKCU到达那里.如果您想要这样的话,应该使用自动运行的exe而不是服务.诸如检查会话并向其中注入内容以访问会话中已加载的注册表配置单元之类的任何事情都是过大的杀伤力,并且不可能以任何方式清除.
本文标题为:c#-以用户身份安装Windows服务
- C# 使用AE获取feature的属性及字段操作 2023-03-29
- C#实现Check Password和锁定输错密码锁定账户功能 2023-02-07
- C#使用Objects Comparer进行对象比较 2023-06-21
- C# 使用相同权限调用 cmd 传入命令的方法 2022-12-26
- C#单线程和多线程端口扫描器详解 2023-06-27
- C# Random类随机函数实例详解 2023-07-04
- C#中DataTable和List互转的示例代码 2023-07-18
- 当我们将其传递给函数作为参数时,此数组将在C#中占用多少内存 2023-11-16
- Unity3D使用陀螺仪控制节点旋转 2023-02-02
- C#中DateTime函数的详细用法 2023-06-14