午夜视频在线观看区二区-午夜视频在线观看视频-午夜视频在线观看视频在线观看-午夜视频在线观看完整高清在线-午夜视频在线观看网站-午夜视频在线观看亚洲天堂

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

C#強制開啟Windows系統(tǒng)遠程桌面服務,取消僅允許運行使用網(wǎng)絡級別身份驗證(NLA)的遠程桌面的計算機連接限制

admin
2025年3月7日 12:14 本文熱度 532

以下是實現(xiàn)強制開啟Windows 遠程桌面服務并禁用網(wǎng)絡級別身份驗證(NLA)的C#代碼示例:

using System;

using Microsoft.Win32;

using System.ServiceProcess;

using System.Diagnostics;

using System.Security.Principal;


class EnableRemoteDesktop

{

    static void Main(string[] args)

    {

        if (!IsAdministrator())

        {

            Console.WriteLine("請以管理員權限運行此程序。");

            return;

        }


        try

        {

            ConfigureTermService();

            EnableRdpThroughRegistry();

            DisableNlaThroughRegistry();

            RestartTermService();

            

            Console.WriteLine("遠程桌面已成功啟用,NLA限制已取消!");

        }

        catch (Exception ex)

        {

            Console.WriteLine($"操作失敗: {ex.Message}");

        }

    }


    static bool IsAdministrator()

    {

        var identity = WindowsIdentity.GetCurrent();

        var principal = new WindowsPrincipal(identity);

        return principal.IsInRole(WindowsBuiltInRole.Administrator);

    }


    static void ConfigureTermService()

    {

        try

        {

            // 設置服務為自動啟動

            ProcessStartInfo scConfig = new ProcessStartInfo

            {

                FileName = "sc",

                Arguments = "config TermService start= auto",

                UseShellExecute = false,

                CreateNoWindow = true

            };

            Process.Start(scConfig)?.WaitForExit();


            // 確保服務運行

            using (ServiceController service = new ServiceController("TermService"))

            {

                if (service.Status != ServiceControllerStatus.Running)

                {

                    service.Start();

                    service.WaitForStatus(ServiceControllerStatus.Running, TimeSpan.FromSeconds(30));

                }

            }

        }

        catch (Exception ex)

        {

            throw new Exception($"配置遠程桌面服務失敗: {ex.Message}");

        }

    }


    static void EnableRdpThroughRegistry()

    {

        try

        {

            using (RegistryKey key = Registry.LocalMachine.OpenSubKey(

                @"SYSTEM\CurrentControlSet\Control\Terminal Server", true))

            {

                key?.SetValue("fDenyTSConnections", 0, RegistryValueKind.DWord);

            }

        }

        catch (Exception ex)

        {

            throw new Exception($"修改注冊表啟用RDP失敗: {ex.Message}");

        }

    }


    static void DisableNlaThroughRegistry()

    {

        try

        {

            using (RegistryKey rdpKey = Registry.LocalMachine.OpenSubKey(

                @"SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp", true))

            {

                rdpKey?.SetValue("UserAuthentication", 0, RegistryValueKind.DWord);

            }

        }

        catch (Exception ex)

        {

            throw new Exception($"禁用NLA失敗: {ex.Message}");

        }

    }


    static void RestartTermService()

    {

        try

        {

            using (ServiceController service = new ServiceController("TermService"))

            {

                if (service.Status == ServiceControllerStatus.Running)

                {

                    service.Stop();

                    service.WaitForStatus(ServiceControllerStatus.Stopped, TimeSpan.FromSeconds(30));

                }

                service.Start();

                service.WaitForStatus(ServiceControllerStatus.Running, TimeSpan.FromSeconds(30));

            }

        }

        catch (Exception ex)

        {

            throw new Exception($"重啟服務失敗: {ex.Message}");

        }

    }

}

使用說明:

  1. 以管理員身份運行:

    • 在Visual Studio中創(chuàng)建項目時,需在app.manifest中添加管理員權限請求:

<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
  1. 關鍵操作說明:

    • fDenyTSConnections設為0啟用遠程桌面

    • UserAuthentication設為0禁用NLA

    • 服務配置: 將TermService服務設置為自動啟動并確保運行狀態(tài)

    • 注冊表修改:

    • 服務重啟: 確保注冊表修改生效

  2. 附加建議(可選):

// 添加防火墻規(guī)則(如果需要)

static void AddFirewallRule()

{

    try

    {

        ProcessStartInfo firewall = new ProcessStartInfo

        {

            FileName = "netsh",

            Arguments = "advfirewall firewall add rule name=\"Remote Desktop\" dir=in protocol=TCP localport=3389 action=allow",

            UseShellExecute = false,

            CreateNoWindow = true

        };

        Process.Start(firewall)?.WaitForExit();

    }

    catch (Exception ex)

    {

        Console.WriteLine($"防火墻規(guī)則添加失敗: {ex.Message}");

    }

}

注意事項:

  • 修改注冊表前建議備份

  • 禁用NLA會降低安全性,建議僅在可信網(wǎng)絡環(huán)境中使用

  • 部分服務器版本可能需要額外配置

  • 確保3389端口在防火墻中開放(代碼中已提供示例)

  • ?

相關文檔:

C#強制關閉Windows Server系統(tǒng)服務器遠程桌面服務方法[3]
  http://29680.oa22.cn


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

主站蜘蛛池模板: 国产在线观看精品一区二区三区91 | 国产无套内射又大又猛又粗又爽 | 国产精品国产免费无码专区不 | 国产av熟女一区二区三区 | 国产精品美乳在线观看 | 国产午夜精品理论片小yo奈 | 国产麻豆老师在线观看 | 东京日韩人妻无码专区一本亚州最新 | 国产精品一级毛片无码老人 | 国产专区校园欧美 | 丰满饥渴老女人hd | 二区不卡 | 国产黄色片网站a欧美视频 国产黄色片一级a级特级 | 国产精品一区欧美日韩制 | 国产成人午夜视频影院免费观看 | 国产午夜福利在线看 | 国产精品日韩欧美在线第3页 | 国产亚洲大尺度无码无码专线 | 精品日本一区 | 国产亚洲啪啪视频 | 国产极品在线视频 | 1024国产中文毛片基地 | 精品人妻在线视频一区二区三区 | 91理论片午午伦夜理片久久 | 国产白丝内射 | 国产午夜精品久久久久婷 | 国产精品无码国产字幕av | 2025韩国午夜福利片在线观看 | 国产成人aⅴ综合在线影院 国产成人av | 国产精品美女在线观看 | av无码久久不卡 | 成人精品久久 | 国内外精品成人免费视频 | 国产成人精品综合久久66 | 成人免费一区二区三区视频软件 | 国产日韩精品无码去免费专区国产 | 国产精品碰碰 | 国产精品v毛片免费软件 | 国产午夜福利在线观看 | 国产午夜在线播放a | 国产成人av大片大片在线 |