回答
如何检测Windows登录事件?
如果存在任何机制,它很可能在WMI中。有许多WMI类。值得注意的是Win32_LogonSession
;这与Win32_Account
通过Win32_LoggedonUser
有关)。如果创建事件支持Win32_LogonSession
那么这将是一个非常有效的方法。
而您如何从Windows服务启动用户登录?
LogonUser
API允许创建一个新的用户令牌,然后可以使用该令牌的线程或进程。使用CreateProcessWithLogonW
(以及类似的)允许创建用户名和密码以在不同的账户下创建进程(实质上LogonUser
加CreateProcessWithTokenW
)。
您可以通过监控事件日志来检测用户登录。正如理查德解释的那样,你也可以开始一个特定用户的过程。
但是,听起来好像你正在尝试做其他事情,即交换登录用户的登录身份。这我觉得是不可能的。
如果你正在开发适用于Windows 2000/XP中,你可以创建一个使用JWA库和德尔福Winlogon通知程序包。他们已经取得了非常容易:
http://blog.delphi-jedi.net/2008/05/27/winlogon-notification-package/
这也可以让你把一个形式CTRL + ALT + DEL屏幕上,如果你想为好。该表单正在SYSTEM配置文件下运行。
Winlogon通知包已从Vista中删除。
使用WTSRegisterSessionNotification或System Event Notification Service (SENS)。 但是,您无法以交互方式登录用户s.t.登录对话框将被删除,并显示用户桌面。这由winlogon使用某些注册表项完成。 LogonUser只是给你一个令牌,可以用来模拟用户。
- 1. 如何检测Qt中的Windows事件?
- 2. 何时登录到Windows事件日志?
- 3. 检测用户从Windows服务登录
- 4. GitHub如何检测登录/注销?
- 5. 在Windows中记录新事件时检测
- 6. 在HttpModule中检测登录
- 7. 使用SENS检测登录
- 8. 如何注册设计登录事件?
- 9. VBScript和Windows Shell。如何检测窗口事件
- 10. 如何检测USB断开事件? (Windows,.NET C#应用程序)
- 11. Android检测相机的记录事件
- 12. 如何检测浏览器何时将登录密码输入网络登录
- 13. python windows目录mtime:如何检测软件包目录中的新文件?
- 14. 如何检查登录mysql
- 15. 如何检查android登录?
- 16. 以编程方式使用C#检测Windows登录尝试
- 17. 在vBScript中检测Windows CE(登录脚本)
- 18. iScroll 5,如何检测滚动事件
- 19. richfaces如何检测鼠标事件
- 20. 如何检测全局拖动事件?
- 21. 如何检测杀死进程事件
- 22. 如何检测多点触摸事件?
- 23. 如何检测IE11关闭事件
- 24. 如何检测onLongClick ACTION_UP事件?
- 25. 如何从pdf.js检测滚动事件
- 26. 如何检测断开事件
- 27. 如何检测事件的下层
- 28. 如何检测“向下滚动”事件
- 29. Angular如何检测Kendo点击事件?
- 30. 通过事件的Windows CredentialProvider自动登录仍显示登录按钮