Área de Trabalho Remota especifique o monitor para abrir

Área de Trabalho Remota especifique o monitor para abrir

Existe alguma maneira de abrir a Área de Trabalho Remota v6 em um monitor específico em uma configuração de monitor duplo?

Eu sei que ele suporta monitores duplos e é fácil usar os dois monitores, mas o que eu realmente quero é que todas as minhas sessões RDP sejam abertas no meu monitor secundário. Eu salvo todas as minhas conexões usadas com frequência em arquivos .RDP e atualmente tenho uma confusão onde algumas abrem no monitor principal e outras no monitor secundário.

Ao navegar pelo arquivo RDP, não consigo discernir qual configuração está controlando isso (suspeito que não esteja neste arquivo).

Então, como faço para controlar isso? A propósito, estou executando o Win7 como meu cliente e conectando-me quase exclusivamente a máquinas Server 2008 R2.

Responder1

Existem opções de posição e modo de tela no arquivo RDP que controlam isso definindo a posição e o tamanho da janela do cliente RDP, mas não há opções explícitas que especifiquem qual monitor, você terá que trabalhar com as configurações e escolher aquelas que entregam os resultados você deseja em sua combinação de monitores. Você também pode definir independentemente a largura e a altura da área de trabalho remota dentro da área da janela que você definir.

As principais configurações são

winposstr:s:0,m,l,t,r,b
m = mode ( 1 = use coords for window position, 3 = open as a maximized window )
l = left
t = top
r = right  (ie Window width)
b = bottom (ie Window height)

As coordenadas l,t são relativas à origem padrão do Windows, onde (0,0) é o canto superior esquerdo da área de trabalho virtual e os valores r,b são largura e altura absolutas, portanto:

winposstr:s:0,1,100,100,800,600

Abre uma janela de 800x600 a 100 pixels da borda esquerda do monitor mais à esquerda e 100 pixels abaixo da borda superior.

A opção Modo de tela informa ao cliente TS para abrir no modo de janela ou tela cheia

screen mode id:i:x

Defina x como 1 para o modo Janela e 2 para o modo RDP "Tela Cheia". O cliente TS escolherá o melhor monitor no último modo, dependendo de qual monitor físico tem a melhor sobreposição com os requisitos t,l,r,b na configuração winposstr.

O tamanho da área de trabalho remota é definido pelas duas configurações de arquivo rdp a seguir.

desktopwidth:i:x
desktopheight:i:y

Onde xey são as dimensões da área de trabalho que você deseja em pixels. Obviamente, se for maior que o tamanho da janela escolhido, você terá barras de rolagem para lidar e, se for menor, terá espaço não utilizado na área de trabalho. Se você estiver optando por um modo de janela, o tamanho da janela escolhido deve ser maior que o tamanho da área de trabalho remota em um certo número de pixels que variará dependendo do dpi da sua área de trabalho, mas tradicionalmente teria cerca de 6 pixels extras de largura e 27 ou mais de altura (para a barra de título).

O Remote Desktop Blog tem um artigo sobre isso que você pode encontraraqui. Há algumas análises detalhadas e aprofundadas da inter-relação entre essas configurações emeste artigo no site da Ohman Automation Corp.

Responder2

Analisando o arquivo .rdp

O.rdpo conteúdo do arquivo ficará assim:

screen mode id:i:2
use multimon:i:0
desktopwidth:i:1680
desktopheight:i:1050
session bpp:i:32
winposstr:s:0,1,-1680,0,-115,1050
[….]

Procure a palavra-chavewinpoststr. Os parâmetros mais importantes são os números após winposstr. Ignore o “:s:0,1” inicial e concentre-se nos últimos quatro números delimitados por vírgula.

Os últimos quatro números expressam, em pixels, a posição doesquerda, superior, direita, efundobordas da janela da sessão remota.

Na verdade, os números se referem à posição da janela quando a janela é restaurada, mas a posição do pixel da borda esquerda da janela é importante porque também determina o monitor que a sessão remota usará quando a janela for maximizada.

Calculando os valores para winposstr

Os números que você usará dependem de quantos monitores você possui, das resoluções de tela de cada um e de qual monitor você selecionou como monitor principal.

A posição da borda esquerda determina o monitor

O primeiro dos últimos quatro números, que é o mais importante, indica a posição da borda esquerda da janela. Se o seu monitor principal estiver no centro e você tiver monitores à esquerda e à direita, você usará um número negativo para os monitores à esquerda e um número positivo para os monitores à direita.

Por exemplo, se você tiver dois monitores à esquerda, cada um com resolução de 1680 x 1050, use-1680para colocar a janela da sessão no monitor imediatamente à esquerda e dobrá-la (-3360) para colocar a janela no monitor mais à esquerda.

winposstr:s:0,1,**-1680**,0,0,1050

winposstr:s:0,1,**-3360**,0,-1680,1050

Se o seu monitor principal tiver uma resolução de 1200 x 1920, use 1200 para colocar a janela no monitor imediatamente à direita. Isso funciona porque a posição do pixel é onde o monitor principal termina (e o monitor à direita começa).

winposstr:s:0,1,**1200**,0,2880,1050

Se você tiver dois monitores à direita com resolução de 1680 x 1050 e quiser colocar a janela no monitor mais à direita, basta adicionar 1200 a 1680 para obter 2880.

winposstr:s:0,1,**2880**,0,4560,1050

Bordas superior e inferior Os outros números só entram em ação quando a janela é restaurada (não maximizada) e podem ser ajustados a seu gosto.

O segundo número (terceiro a partir do final) indica a borda superior da janela, portanto você pode deixar esse número em 0, a menos que tenha requisitos especiais. O quarto (último) número é a resolução vertical (=parte inferior) da janela. Você pode deixar na resolução vertical máxima do monitor, como nos exemplos acima.

winposstr:s:0,1,1200,**0**, 2880,**1050**

Borda Direita A borda direita da janela é expressa pelo próximo ao último número. A menos que você prefira o contrário, isso pode ser definido para o mesmo tamanho da janela maximizada. Seguindo os exemplos de resolução de monitor acima, aqui estão os cálculos:

Monitor Right Edge Calculation      Winposstr Value
Leftmost    -3360 + 1680 = -1680    winposstr:s:0,1,-3360,0,**-1680**,1050
Immediate left  -1680 + 1680 = 0    winposstr:s:0,1,-1680,0,**0**,1050
Immediate right 1200 + 1680 = 2880  winposstr:s:0,1,1200,0,**2880**,1050
Rightmost   1200 + 1680 + 1680 = 4560   winposstr:s:0,1,2880,0,**4560**,1050

Responder3

Eu estava tentando corrigir esse mesmo problema hoje e continuei encontrando variações dessas instruções, mas não consegui fazê-las funcionar. Para qualquer outra pessoa que tenha tido dificuldades com o'Winpoststr'solução Encontrei uma solução alternativa muito mais simples que não me deu nenhum problema até agora e realiza a mesma coisa. Estou usando o Windows 10.

span monitors:i:1
multimon:i:1
selectedmonitors:s:0,1,2

Procure ou adicione o'monitores selecionados:s:'linha para o seu arquivo de configuração RDP e simplesmente insira a exibição principal primeiro.

Para obter a exibição do seu monitor # abra um prompt de comando e execute o comando"mstsc /l". Isso retornará uma janela listando os IDs e posições do seu monitor -Observe que esses não serão os mesmos números que você vê nas configurações de exibição.

No meu caso tenho três monitores e recebi de volta:

0: 1024  x 768; (-1024, 11, -1, 778)
1: 1920 x 1080; (2560, 11, 4479, 1090)
2: 2560 x 1440; (0, 0, 2559, 1439)

Como desejo usar apenas dois monitores específicos para esta conexão específica (0 e 2) e quero que o monitor '2' seja o monitor principal, minha configuração agora mostra:

selectedmonitors:s:2,0

Responder4

As respostas que usam as coordenadas da tela são difíceis de implementar e não funcionam bem se você alternar frequentemente entre diferentes configurações de tela (por exemplo, hotdesking ou trabalho híbrido) ou se desejar compartilhar o arquivo RDP com outras pessoas.

As configurações abaixo deBlog de Scott Hanselmanfuncionou bem para mim:

screen mode id:i:2
span monitors:i:1
use multimon:i:1
selectedmonitors:s:1,2

A linha final é a única que precisa ser adaptada à sua situação. Eu tenho 3 telas e ao executar "mstsc /l" no menu de execução, posso ver que ele os numera 0,1,2 da esquerda para a direita, então posso escolher entre estas opções:

selectedmonitors:s:0,1 //first 2 screens
selectedmonitors:s:1,2 //last 2 screens
selectedmonitors:s:0,1,2 //all 3 screens
selectedmonitors:s:0 // first screen only
selectedmonitors:s:1 // second screen only
selectedmonitors:s:2 // third screen only
selectedmonitors:s:0,2 //this doesn't work so just does second screen

informação relacionada