Python - 模拟当前登录的用户(来自系统用户)

Posted

技术标签:

【中文标题】Python - 模拟当前登录的用户(来自系统用户)【英文标题】:Python - Impersonate currently logged user (from system user) 【发布时间】:2014-05-26 15:49:25 【问题描述】:

我必须在 Windows 上编写一个 Python 脚本(使用 win32 api),以系统权限执行。我需要模拟当前登录的用户向他显示一个弹出窗口(因为系统用户不能)。

所以,我正在寻找一种方法来执行此操作。我找到了这个方法: win32security.ImpersonateLoggedOnUser 但需要一个可以使用此方法获得的句柄: win32security.LogonUser

然而,最后一种方法需要用户密码,但我没有。有一种方法可以在没有用户密码的情况下获取此处理程序(或另一种模拟当前登录用户的方法,或另一种显示系统用户弹出窗口的方法)?我是系统用户,所以我对机器有完全的权限...

非常感谢,抱歉我的英语不好! 费德里科

【问题讨论】:

实际上,进程是否以系统权限运行并没有任何区别,重要的是进程在哪个远程桌面会话中运行。模拟无济于事。您必须启动一个单独的进程(在适当的会话中)以代表您与用户进行交互。有关于此的现有问题和答案,但可能不在 Python 中。 【参考方案1】:

您的脚本必须作为服务运行。我相信从 Windows Vista 开始,您必须在 GUI 的用户会话中拥有一个单独的应用程序。

【讨论】:

以上是关于Python - 模拟当前登录的用户(来自系统用户)的主要内容,如果未能解决你的问题,请参考以下文章

Python模拟一个用户登录系统

python练习小工具之模拟登录系统

python简单模拟博客园系统

百万年薪python之路 -- 第二周 --模拟博客园系统

python验证码识别

从服务中模拟当前用户