狠狠色丁香婷婷综合尤物/久久精品综合一区二区三区/中国有色金属学报/国产日韩欧美在线观看 - 国产一区二区三区四区五区tv

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發文檔 其他文檔  
 
網站管理員

C#獲取Windows Server系統最新的遠程桌面登錄信息

admin
2025年2月14日 17:35 本文熱度 898

以下是一個示例代碼,用于獲取Windows Server系統最新的遠程桌面登錄信息。它通過查詢Windows事件日志(特別是“Microsoft - Windows - TerminalServices - LocalSessionManager/Operational”日志中的相關事件)來實現:

using System;

using System.Diagnostics;


class Program

{

    static void Main(string[] args)

    {

        // 定義變量存儲最新登錄信息

        string latestLoginUser = string.Empty;

        DateTime latestLoginTime = DateTime.MinValue;


        try

        {

            // 打開指定的事件日志

            EventLog eventLog = new EventLog("Microsoft - Windows - TerminalServices - LocalSessionManager/Operational", ".");


            // 遍歷事件日志中的條目

            foreach (EventLogEntry entry in eventLog.Entries)

            {

                // 事件ID為1149表示遠程連接成功事件

                if (entry.EventID == 1149 && entry.EntryType == EventLogEntryType.Information)

                {

                    // 獲取事件發生時間

                    DateTime entryTime = entry.TimeGenerated;


                    // 如果該事件時間比已記錄的最新登錄時間晚,則更新最新登錄信息

                    if (entryTime > latestLoginTime)

                    {

                        latestLoginTime = entryTime;


                        // 解析用戶信息,這里簡單地從消息中提取用戶名

                        // 不同系統的事件消息格式可能略有不同,需根據實際情況調整解析邏輯

                        string message = entry.Message;

                        int startIndex = message.IndexOf("user name: ") + "user name: ".Length;

                        int endIndex = message.IndexOf(Environment.NewLine, startIndex);

                        if (startIndex > 0 && endIndex > startIndex)

                        {

                            latestLoginUser = message.Substring(startIndex, endIndex - startIndex).Trim();

                        }

                    }

                }

            }


            // 輸出最新登錄信息

            if (!string.IsNullOrEmpty(latestLoginUser))

            {

                Console.WriteLine($"最新的遠程桌面登錄信息:");

                Console.WriteLine($"登錄用戶:{latestLoginUser}");

                Console.WriteLine($"登錄時間:{latestLoginTime}");

            }

            else

            {

                Console.WriteLine("未找到遠程桌面登錄信息。");

            }

        }

        catch (Exception ex)

        {

            Console.WriteLine($"發生錯誤:{ex.Message}");

        }

    }

}

注意事項:

1. 運行此程序需要有足夠的權限來訪問事件日志,通常需要以管理員身份運行。

2. 不同版本的Windows Server系統,事件日志的名稱、事件ID以及事件消息的格式可能會有所不同,如果在實際使用中發現無法正確獲取信息,需要根據具體環境調整代碼中的事件日志名稱、事件ID和消息解析邏輯等內容。

3. 此代碼僅作為示例,實際應用中可能還需要考慮更多的異常處理和兼容性問題。


該文章在 2025/2/14 17:35:35 編輯過
關鍵字查詢
相關文章
正在查詢...
點晴ERP是一款針對中小制造業的專業生產管理軟件系統,系統成熟度和易用性得到了國內大量中小企業的青睞。
點晴PMS碼頭管理系統主要針對港口碼頭集裝箱與散貨日常運作、調度、堆場、車隊、財務費用、相關報表等業務管理,結合碼頭的業務特點,圍繞調度、堆場作業而開發的。集技術的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業的高效ERP管理信息系統。
點晴WMS倉儲管理系統提供了貨物產品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質期管理,貨位管理,庫位管理,生產管理,WMS管理系統,標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協同辦公管理系統。
Copyright 2010-2025 ClickSun All Rights Reserved