Padrão, não há opção para o usuário escolher entre o uso de um ou vários monitores em um farm do Microsoft RDS baseado no Windows Server 2012 (R2). Embora haja uma opção para adicionar / substituir opções no conteúdo do Arquivo RDP que é gerado pela página Acesso via Web RD. Isso pode ser feito modificando a caixa de seleção ShowOptimizeExperience.
Para conseguir isso, você precisa executar as seguintes etapas:
-
Altere as configurações do aplicativo no Gerenciador do IIS
-
Modifique o arquivo Site.xsl
-
Modifique o arquivo RDWAStrings.xml
Altere as configurações do aplicativo no Gerenciador do IIS
-
Inicie o Gerenciador do IIS
-
Ir para: Site padrão - > RDWeb - > Páginas - > Configurações do aplicativo
-
Altere a opção ShowOptimizeExperience de False para True
Modifique o arquivo RDWAStrings.xml
Vá para o seguinte caminho: C: \ Windows \ Web \ RDWeb \ Pages \ en-US \ Abra o arquivo RDWAStrings.xml no bloco de notas
Substitua o texto:
<string id="OptimizeMyExperience">Optimize my experience for a LAN network when connecting to the computer or application.</string>
com o seguinte texto:
<string id="OptimizeMyExperience">Use multiple monitors.</string>
Modifique o arquivo Site.xsl
Vá para o seguinte caminho: C: \ Windows \ Web \ RDWeb \ Pages \ Abra o arquivo Site.xsl
Procure o texto strRdpFileContents
Substitua o texto:
<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>
Com o seguinte texto:
<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>
Nota:
Como você pode ver no texto original, a Microsoft está pesquisando a expressão regular "tipo de conexão: i:".
No conteúdo do arquivo rdp gerado, o texto é "tipo de conexão% 3Ai% 3A".
Isso significa que a opção "Otimizar minha experiência" da Microsoft nunca funcionará.
Quando você for à sua página da Web do RDS, verá uma caixa de seleção com o texto "Usar vários monitores"