Jam*_*nds 5 rdp monitors remote-desktop screen-resolution
我有一个远程桌面场的测试环境,其中有一个连接代理负载平衡跨远程桌面会话主机服务器的登录。所有服务器均基于 Server 2012 R2 构建。使用 rd web access,我们可以从任何地方访问这个农场。
通过网络访问登录时,您可以选择屏幕分辨率或使用全屏。如果您在选择全屏时有两台显示器,它将始终使用您的两台显示器。
有谁知道如何调整RDWeb页面,以便您可以选择是否同时使用您的两个显示器?
从 RDP 6.1 开始,这个选项在 GUI 中,所以我想有一种方法可以将它添加到 Web 访问页面。
小智 3
默认情况下,用户无法选择在基于 Windows Server 2012(R2) 的 Microsoft RDS Farm 中使用一台或多台显示器。尽管有一个选项可以添加/替换 RD Web 访问页面生成的 RDP 文件内容中的选项。这可以通过修改 ShowOptimizeExperience 复选框来完成。
为此,您需要执行以下步骤:
更改 IIS 管理器中的应用程序设置
修改Site.xsl文件
修改 RDWAStrings.xml 文件
更改 IIS 管理器中的应用程序设置
启动 IIS 管理器
转至:默认网站 -> RDWeb -> 页面 -> 应用程序设置
将选项 ShowOptimizeExperience 从 False 更改为 True
修改 RDWAStrings.xml 文件
转到以下路径:C:\Windows\Web\RDWeb\Pages\en-US
在记事本中打开文件 RDWAStrings.xml
替换文本:
<string id="OptimizeMyExperience">Optimize my experience for a LAN network when connecting to the computer or application.</string>
Run Code Online (Sandbox Code Playgroud)
并附有以下文字:
<string id="OptimizeMyExperience">Use multiple monitors.</string>
Run Code Online (Sandbox Code Playgroud)
修改Site.xsl文件
转到以下路径:C:\Windows\Web\RDWeb\Pages
打开文件 Site.xsl
搜索文字strRdpFileContents
替换文本:
<xsl:if test="$showoptimizeexperience">
if (<xsl:value-of select="$feedidprefix"/>Controls.chkShowOptimizeExperience.checked) {
var objRegExp = new RegExp("connection type:i:([0-9]+)", "i");
var iIndex = strRdpFileContents.search( objRegExp );
<!-- Add 'connection type' if it does exist otherwise replace. -->
if ( -1 == iIndex ) {
if ( "\\n" != strRdpFileContents.charAt(strRdpFileContents.length-1) ) {
strRdpFileContents += "\\r\\n";
}
strRdpFileContents += "connection type:i:6\\r\\n";
} else {
strRdpFileContents = strRdpFileContents.replace(objRegExp, "connection type:i:6");
}
}
</xsl:if>
Run Code Online (Sandbox Code Playgroud)
带有以下文字:
<xsl:if test="$showoptimizeexperience">
var pmxUseMultimon = 0;
if (<xsl:value-of select="$feedidprefix"/>Controls.chkShowOptimizeExperience.checked) {
pmxUseMultimon = 1;
}
var objRegExp = new RegExp("use%20multimon%3Ai%3A([0-9])", "i");
var iIndex = strRdpFileContents.search( objRegExp );
<!-- Add 'use multimon' if it does exist otherwise replace. -->
if ( -1 == iIndex ) {
if ( "\\n" != strRdpFileContents.charAt(strRdpFileContents.length-1) ) {
strRdpFileContents += "\\r\\n";
}
strRdpFileContents += "use%20multimon%3Ai%3A"+pmxUseMultimon+"\\r\\n";
} else {
strRdpFileContents = strRdpFileContents.replace(objRegExp, "use%20multimon%3Ai%3A"+pmxUseMultimon);
}
</xsl:if>
Run Code Online (Sandbox Code Playgroud)
笔记:
正如你在原文中看到的,微软正在搜索正则表达式“connection type:i:”。
在生成的 rdp 文件内容中,文本为“连接类型%3Ai%3A”。
这意味着微软的“优化我的体验”选项永远不会起作用。
当您现在转到 RDS 网页时,您将看到一个带有文本“使用多个显示器”的复选框
将远程应用程序配置“重定向监视器的最大数量”设置为大于 1 的数字非常重要。除非此解决方案不起作用。