2009-09-19 75 views

回答

2

如何檢測Windows登錄事件?

如果存在任何機制,它很可能在WMI中。有許多WMI類。值得注意的是Win32_LogonSession;這與Win32_Account通過Win32_LoggedonUser有關)。如果創建事件支持Win32_LogonSession那麼這將是一個非常有效的方法。

而您如何從Windows服務啓動用戶登錄?

LogonUser API允許創建一個新的用戶令牌,然後可以使用該令牌的線程或進程。使用CreateProcessWithLogonW(以及類似的)允許創建用戶名和密碼以在不同的賬戶下創建進程(實質上LogonUserCreateProcessWithTokenW)。

1

您可以通過監控事件日誌來檢測用戶登錄。正如理查德解釋的那樣,你也可以開始一個特定用戶的過程。

但是,聽起來好像你正在嘗試做其他事情,即交換登錄用戶的登錄身份。這我覺得是不可能的。

1

Winlogon通知包已從Vista中刪除。

使用WTSRegisterSessionNotification或System Event Notification Service (SENS)。 但是,您無法以交互方式登錄用戶s.t.登錄對話框將被刪除,並顯示用戶桌面。這由winlogon使用某些註冊表項完成。 LogonUser只是給你一個令牌,可以用來模擬用戶。