启动在 Windows 用户登录时模拟的应用程序
Posted
技术标签:
【中文标题】启动在 Windows 用户登录时模拟的应用程序【英文标题】:Launch application impersonated on windows user logon 【发布时间】:2011-01-08 08:19:43 【问题描述】:是否可以启动用 .net 编写的 Windows 桌面应用程序以在 Windows 用户登录时模拟到 SYSTEM 帐户运行?
这个问题的主要目的是防止用户杀死我的桌面应用程序,我在网络上找不到特定的解决方案。
我想知道防病毒应用程序是如何做到这一点的,因为目前我正在为 Windows 端点开发一个开源数据泄露预防工具 MyDLP。
任何想法将不胜感激。
【问题讨论】:
【参考方案1】:不,没有办法阻止用户停止在其会话中运行的应用程序。任何严肃的、合法的应用程序都不会远程考虑覆盖用户操作并拒绝关闭。
由于您所描述的“在用户登录时以 SYSTEM 身份运行的应用程序”并不存在,因此最接近的等价物是服务。作为服务运行的应用程序无法与会话交互(曾经有一种方法,但 Vista 非常明确地禁止这样做)。
需要持续运行的应用程序必须部署两个组件,一个是执行工作的服务部分,另一个是在用户会话中运行并通过 IPC 与服务交互的交互式独立应用程序。
【讨论】:
我明白了。我有一个在后台运行的服务,我知道让服务与桌面交互是不可取的。但是,当我使用钩子时,AV 应用程序会将其视为病毒,并且我没有任何其他方式来控制退出事件。以上是关于启动在 Windows 用户登录时模拟的应用程序的主要内容,如果未能解决你的问题,请参考以下文章