Windows Service Account Lokales System. So verfolgen Sie SYTEM Session Ex: System entsperren und sperren usw.C#

Ein Treffpunkt für C#-Programmierer
Anonymous
 Windows Service Account Lokales System. So verfolgen Sie SYTEM Session Ex: System entsperren und sperren usw.

Post by Anonymous »

Erstellen Sie das Arbeitnehmer -Überwachungs -Service -Tool. Ich benutze Windows Service, um das Tool zu erstellen. Jetzt bin ich sehr verwirrt, mit welchem ​​Servicekonto ich dieses Tool erstellen muss. Diese Verwirrung tritt auf, als ich versucht habe, die Systemsperrung zu protokollieren und Zeit mithilfe von LocalSylytem -Konto freizuschalten. Das Ereignis wird nicht ausgelöst. Nach einiger Zeit des Debuggens, ich verstehe, dass das lokale System auf Service 0 -Sitzung ausgeführt wird. Es hat keine Zugriffsdesktopeinstellungen. Ich muss den Arbeitgeber für den gesamten Zugangsunternehmen bieten. Zukünftig werden die Funktionen verbessert, wie die App -Nutzung durch Mitarbeiter, Track -Netzwerk, Herunterfahren und Öffnen usw. Kann mir jemand helfen, < /p>
Ich habe versucht, den Sitzungsschalter zu abonnieren. Es wird erfolgreich abonniert. Aber das Ereignis löst nicht aus. < /P>

Code: Select all

using System;
using System.Diagnostics;
using System.IO;
using System.ServiceProcess;

namespace MyFirstService
{
public partial class Service1 : ServiceBase
{
private const int SERVICE_CONTROL_SESSIONCHANGE = 0x0000000D;
private const int WTS_SESSION_LOGON = 0x5;
private const int WTS_SESSION_LOGOFF = 0x6;
private const int WTS_SESSION_LOCK = 0x7;
private const int WTS_SESSION_UNLOCK = 0x8;

public Service1()
{
InitializeComponent();
}

protected override void OnStart(string[] args)
{
WriteToFile("Service started at " + DateTime.Now);
}

protected override void OnStop()
{
WriteToFile("Service stopped at " + DateTime.Now);
}

protected override void OnSessionChange(SessionChangeDescription changeDescription)
{
switch (changeDescription.Reason)
{
case SessionChangeReason.SessionLogon:
WriteToFile("User logged on at " + DateTime.Now);
break;

case SessionChangeReason.SessionLogoff:
WriteToFile("User logged off at " + DateTime.Now);
break;

case SessionChangeReason.SessionLock:
WriteToFile("Workstation locked at " + DateTime.Now);
break;

case SessionChangeReason.SessionUnlock:
WriteToFile("Workstation unlocked at " + DateTime.Now);
break;

default:
WriteToFile($"Session change event: {changeDescription.Reason}");
break;
}
}

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post