遠端桌面:“登錄時執行這些程序”和“連接時啟動以下程序”有什麼區別?
我的組織正在執行終端伺服器場,以便為使用者提供特定的應用程序。該設置包括一個 AD 域控制器和兩個執行遠端桌面服務的終端伺服器。所有伺服器都執行 Windows Server 2008 R2 Standard。
使用者在我們的組織之外,因此客戶端配置不在我們的範圍內。我們只會向他們提供 RDP 連接文件和儲存在 AD 中的使用者名。在 RDP 文件中,我們配置了
"Start the following program on connection" = C:\path\to\batchscript.bat
. 當使用者連接時,批處理腳本會進行一些清理和配置工作,然後啟動實際的應用程序。使用者完成他的工作並隨後關閉應用程序。當應用程序關閉時,使用者正在註銷,RDP 會話結束。在第一個使用者升級到 Windows 10 之前,此設置執行良好。顯然,在 Windows 10 中,該選項
"Start the following program on connection"
已從 中刪除mstsc.exe
,使使用者回到終端伺服器的桌面,而不是啟動我們的批處理腳本。為了防止這種情況,我設置了以下 GPO
User Configuration \ Admin Templates \ System \ Logon \ Run these programs at logon = C:\path\to\batchscript.bat
:據我了解,這應該覆蓋客戶端的"Start the following program on connection"
設置。事實上,批處理腳本執行並啟動應用程序。一切都按預期執行,除了當應用程序關閉時使用者不會被註銷,留下一個完全空的桌面螢幕。顯然,GPO與設置
"Run these programs at logon"
不對應。mstsc.exe``"Start the following program on connection"
這兩者有什麼區別?是否有另一個與設置完全相同的 GPO
mstsc.exe
?
與 RDS 會話的每個新連接不一定是新的登錄。使用者通常會重新連接到現有會話。
您可以通過將會話配置為在斷開連接狀態一段時間後註銷來關閉,但這會產生很多影響,具體取決於您嘗試使用 RDS 完成的任務。