LOGO OA教程 ERP教程 模切知識(shí)交流 PMS教程 CRM教程 開(kāi)發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

[C#]通過(guò)Windows系統(tǒng)日志查看最后一次遠(yuǎn)程桌面登錄的用戶(hù)

admin
2025年2月14日 16:59 本文熱度 1126


在C#中讀取本機(jī)遠(yuǎn)程桌面(RDP)的歷史登錄信息通常涉及到讀取Windows事件日志,因?yàn)閃indows操作系統(tǒng)會(huì)將遠(yuǎn)程桌面會(huì)話的登錄信息記錄在事件日志中。你可以使用System.Diagnostics.EventLog類(lèi)來(lái)訪問(wèn)這些日志。

以下是一個(gè)基本的步驟和示例代碼,展示如何使用C#來(lái)讀取本機(jī)的遠(yuǎn)程桌面連接歷史:

步驟 1: 添加必要的命名空間

在你的C#文件中,確保添加了System.Diagnostics命名空間:

using System;

using System.Diagnostics;

步驟 2: 讀取事件日志

你可以通過(guò)查詢(xún)特定的事件日志來(lái)獲取遠(yuǎn)程桌面連接的歷史記錄。對(duì)于遠(yuǎn)程桌面連接,通常使用的是“Security”日志,其中事件ID為4624(成功登錄)或4778(遠(yuǎn)程桌面服務(wù)會(huì)話開(kāi)始)。

private void button1_Click(object sender, EventArgs e)

{

    EventLog rEvent = new EventLog();

    rEvent.Log = "Security";  //"Application", "Security", "System"

    //rEvent.MachineName = "dn0351";

    int tmpNum = 0;

    foreach (EventLogEntry entry in rEvent.Entries)

    {

        if (tmpNum>5) { return; }

        //if (entry.EventID == 4778 && checkMessageLogin(entry.Message))

        //if (entry.EventID == 4624 || entry.EventID == 4778)

        if (entry.EventID == 4778)

        {

            tmpNum++;

            Console.WriteLine($"第 {tmpNum} 次登錄");

            textBox1.Text = textBox1.Text + Environment.NewLine;

            textBox1.Text = textBox1.Text + Environment.NewLine;

            textBox1.Text = textBox1.Text + Environment.NewLine;

            textBox1.Text = textBox1.Text +$"第 {tmpNum} 次登錄:" + Environment.NewLine;

            textBox1.Text = textBox1.Text + ("時(shí)間:" + entry.TimeGenerated) + Environment.NewLine;

            textBox1.Text = textBox1.Text + ("索引:"+entry.Index) + Environment.NewLine;

            textBox1.Text = textBox1.Text + ("ID:" + entry.EventID) + Environment.NewLine;

            textBox1.Text = textBox1.Text + ("用戶(hù)名:" + entry.UserName) + Environment.NewLine;

            textBox1.Text = textBox1.Text + ("設(shè)備名稱(chēng):" + entry.MachineName) + Environment.NewLine;

            textBox1.Text = textBox1.Text + ("站點(diǎn):" + entry.Site) + Environment.NewLine;

            textBox1.Text = textBox1.Text + ("來(lái)源:" + entry.Source) + Environment.NewLine;

            textBox1.Text = textBox1.Text + ("所有信息:" + entry.Message) + Environment.NewLine;

            //textBox1.Text = textBox1.Text + Environment.NewLine + entry.Message;

        }

    }

}


public Boolean checkMessageLogin(String Msg)

{

    Regex check = new Regex(@"登錄類(lèi)型:\s*(?:2|10)", RegexOptions.IgnoreCase);

    if (check.IsMatch(Msg))

    {

        return true;

    }

    else

    {

        return false;

    }

}

注意事項(xiàng):

  1. 權(quán)限:運(yùn)行此代碼的應(yīng)用程序需要有足夠的權(quán)限來(lái)讀取安全日志。通常,這意味著你的應(yīng)用程序需要以管理員權(quán)限運(yùn)行。

  2. 篩選條件:你可以調(diào)整查詢(xún)條件來(lái)過(guò)濾出特定的登錄嘗試,例如基于用戶(hù)名、計(jì)算機(jī)名或時(shí)間范圍。例如,使用EventID=4624 AND UserName='Administrator'可以過(guò)濾出特定用戶(hù)的登錄嘗試。

  3. 性能考慮:頻繁讀取事件日志可能會(huì)影響系統(tǒng)性能,特別是在日志條目非常多的情況下??紤]在必要時(shí)使用,并優(yōu)化查詢(xún)條件。

示例:使用更具體的查詢(xún)條件

如果你只對(duì)特定用戶(hù)或特定時(shí)間的登錄嘗試感興趣,可以修改查詢(xún)字符串:

if (entry.EventID=4624 && entry.UserName=="Administrator" && entry.TimeGenerated > "2025-1-20" && entry.EntryType == EventLogEntryType.Error)
{
 // 示例:查詢(xún)特定用戶(hù)自2020年12月1日以來(lái)的登錄嘗試
}

確保替換日期和時(shí)間以符合你的需求。

通過(guò)以上方法,你可以有效地在C#中讀取和分析本機(jī)的遠(yuǎn)程桌面歷史登錄信息。


該文章在 2025/2/14 18:29:15 編輯過(guò)
關(guān)鍵字查詢(xún)
相關(guān)文章
正在查詢(xún)...
點(diǎn)晴ERP是一款針對(duì)中小制造業(yè)的專(zhuān)業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國(guó)內(nèi)大量中小企業(yè)的青睞。
點(diǎn)晴PMS碼頭管理系統(tǒng)主要針對(duì)港口碼頭集裝箱與散貨日常運(yùn)作、調(diào)度、堆場(chǎng)、車(chē)隊(duì)、財(cái)務(wù)費(fèi)用、相關(guān)報(bào)表等業(yè)務(wù)管理,結(jié)合碼頭的業(yè)務(wù)特點(diǎn),圍繞調(diào)度、堆場(chǎng)作業(yè)而開(kāi)發(fā)的。集技術(shù)的先進(jìn)性、管理的有效性于一體,是物流碼頭及其他港口類(lèi)企業(yè)的高效ERP管理信息系統(tǒng)。
點(diǎn)晴WMS倉(cāng)儲(chǔ)管理系統(tǒng)提供了貨物產(chǎn)品管理,銷(xiāo)售管理,采購(gòu)管理,倉(cāng)儲(chǔ)管理,倉(cāng)庫(kù)管理,保質(zhì)期管理,貨位管理,庫(kù)位管理,生產(chǎn)管理,WMS管理系統(tǒng),標(biāo)簽打印,條形碼,二維碼管理,批號(hào)管理軟件。
點(diǎn)晴免費(fèi)OA是一款軟件和通用服務(wù)都免費(fèi),不限功能、不限時(shí)間、不限用戶(hù)的免費(fèi)OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved

黄频国产免费高清视频,久久不卡精品中文字幕一区,激情五月天AV电影在线观看,欧美国产韩国日本一区二区
日韩中文字幕一区二区 | 亚洲国产精品手机在线观看 | 亚洲精品日产精品乱码不卡 | 亚洲A∨日韩AV高清在线观看 | 亚洲成a人片77777国产 | 亚洲精品自产拍在线观看 |