首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 網頁程式設計 >> PHP 程式設計 >> PHP 綜合知識

PHP 讀取 Windows 登錄取得 RDP (3389) 連接埠

     編輯:PHP 綜合知識

適用場景

僅限 Windows 伺服器 + PHP 啟用 COM 擴充套件 環境,可透過 WScript.Shell 讀取登錄機碼取得遠端桌面服務埠號。

程式碼

<?php
$regKey = 'HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\Wds\rdpwd\Tds\tcp\PortNumber';
$shell = new COM('WScript.Shell');
$port = $shell->RegRead($regKey);
var_dump($port); // 例如 int(3389)
?>

注意事項

  • 需在 php.ini 啟用 extension=com_dotnet(Windows 專用)。
  • 執行 PHP 的使用者需有登錄讀取權限(通常需 Administrator)。
  • 僅適用於 Windows 平台,Linux/macOS 無登錄機制。
  • 若註冊表機碼不存在(如未啟用遠端桌面),會拋出 com_exception。

替代方案

跨平台檢查埠號可用 fsockopen 或 socket_create 嘗試連線,或呼叫系統指令 netstat -an | findstr 3389 (Win) / ss -tlnp | grep 3389 (Linux)。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved