• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

C# Data ostatniego logowania do systemu Windows

+1 głos
286 wizyt
pytanie zadane 16 października 2020 w C# przez piotr3223 Nowicjusz (150 p.)
Cześć. Ostatnio próbuje zrobić program do kontrolowania czasu spędzonego przed komputerem, próbowałem w kodzie wywołać nowy proces quser ale nie działa on na platformie x86(programu musi być postawiony na tej platformie). Macie może pomysł jak rozwiązać ten problem lub jak inaczej pobrać te dane ?
komentarz 16 października 2020 przez MsMaciek123 Pasjonat (24,760 p.)
Może spróbuj po prostu wrzucić do startup'u plik który rozpoczyna odliczanie i to gdzieś zapisuje co minutę?

1 odpowiedź

+1 głos
odpowiedź 17 października 2020 przez VBService Ekspert (256,600 p.)
edycja 17 października 2020 przez VBService

A próbowałeś z: wink
System.Security.Principal
System.DirectoryServices.AccountManagement 

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Security.Principal;
using System.DirectoryServices.AccountManagement;
using System.Windows.Forms;

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            textBox1.Text = WindowsIdentity.GetCurrent().Name.Split('\\')[1];
            textBox2.Text = WindowsIdentity.GetCurrent().Name.Split('\\')[0];
            string userName = WindowsIdentity.GetCurrent().Name.Split('\\')[1];
            string machineName = WindowsIdentity.GetCurrent().Name.Split('\\')[0];
            PrincipalContext c = new PrincipalContext(ContextType.Machine, machineName);
            //Specific User
            //UserPrincipal uc = UserPrincipal.FindByIdentity(c, "user");
            //DateTime? LoggedInTime = uc.LastLogon;

            //Current LoggedIn User
            UserPrincipal uc = UserPrincipal.FindByIdentity(c, userName);
            DateTime? CurrentUserLoggedInTime = uc.LastLogon;
            textBox3.Text = "Last logon (Date Time):" + CurrentUserLoggedInTime.ToString();
        }
    }
}

Podobne pytania

0 głosów
0 odpowiedzi 268 wizyt
pytanie zadane 3 października 2023 w C# przez Gniewomir Nowicjusz (120 p.)
+1 głos
2 odpowiedzi 415 wizyt
pytanie zadane 8 lipca 2023 w C# przez xFrikeQ Nowicjusz (130 p.)

93,607 zapytań

142,529 odpowiedzi

322,999 komentarzy

63,098 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Kursy INF.02 i INF.03
...