.NET Обнаружение события входа в систему в Windows 10
Я был немного озадачен этим вопросом. Мне нужно определить, когда пользователь входит в систему, когда дисплей заблокирован и когда пользователь выходит из системы. В прошлом я использовал приложение VB.NET, которое использует ссылку COM на Sens (служба уведомления о системных событиях), которая использует интерфейс Sens Events ISensLogon.
Однако после перехода на Windows 10 я больше не могу добавлять Sens в качестве COM-объекта в мой проект. Есть ли SDK, который мне не хватает, чтобы использовать эту функцию?
Есть ли другая библиотека COM или ссылка, которую мне нужно использовать для обнаружения этих событий в Windows 10?
1 ответ
Попробуй это:
Imports Microsoft.Win32
Public Class Form1
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
AddHandler SystemEvents.SessionSwitch, AddressOf SystemEvents_SessionSwitch
End Sub
Private Sub SystemEvents_SessionSwitch(sender As Object, e As SessionSwitchEventArgs)
Select Case e.Reason
Case SessionSwitchReason.SessionLock
MessageBox.Show("Lock")
Case SessionSwitchReason.SessionLogoff
MessageBox.Show("LogOff")
Case SessionSwitchReason.SessionLogon
MessageBox.Show("Login")
Case SessionSwitchReason.SessionUnlock
MessageBox.Show("Unlock")
Case Else
End Select
End Sub
End Class
Старайтесь держаться подальше от COM, когда и где.NET Framework делает это возможным.