O Windows 10 não permite mais arrastar janelas pseudo-maximizadas; Há uma solução?

12

No Windows 10, não consigo mais arrastar uma janela pseudo-maximizada. Por exemplo, uma janela da Área de Trabalho Remota 'maximizada' para o tamanho máximo de 1280x1024 (por meu arquivo .rdp) deve ser restaurada para um tamanho menor, depois arrastada e restaurada, mesmo que a janela em si não esteja maximizada para o área de trabalho do monitor. Isso anteriormente não era um problema no Windows 8.1 (ou em outras versões do Windows).

Eu fiz minha diligência com algumas pesquisas. Aqui estão algumas coisas que investiguei e achei que não eram uma causa ou ajuda:

  • Configurações ou disponibilidade do AeroSnap do Windows
  • Recursos ou configurações do driver de vídeo
  • Outros utilitários de monitor ou barra de tarefas de terceiros

Qualquer software que eu tenha maximizado dessa maneira está bloqueado e deve ser restaurado antes que eu possa arrastá-lo agora, incluindo a Área de Trabalho Remota acima mencionada, alguns jogos que eu jogo no modo de janela etc. Outros aplicativos que não são maximizados, é claro tem esse problema.

Um aplicativo de teste pode ser criado no .NET para demonstrar esse problema. Simplesmente crie um aplicativo WinForms com um Form.MaximizedBounds de um valor arbitrário como 500.500 e tenha o formulário maximizado no lançamento (Form.WindowState = Maximized). No Windows 8.1 (e versões anteriores), ele pode ser arrastado pela tela sem problemas; no entanto, no Windows 10, não pode.

Alguém sabe o que dá e se existem soluções alternativas?

psouza4
fonte
Parece que consigo arrastar janelas de tamanho fixo sem problemas na minha máquina Windows 10. Você está usando um único monitor por acaso? Porque eu estou usando múltiplos.
Arthur Kay
Essa é uma configuração de monitor triplo organizada horizontalmente (como no Windows 8.1). Bem-vindo a sugestões de coisas para experimentar. Esteja ciente de que problemas de tamanho fixo não são o problema, é especificamente um problema com as janelas maximizadas.
precisa saber é
Apenas para entrar. Windows 10 maximizando o RDP para seu tamanho restrito, sou capaz de movê-lo.
Unfundednut
Esta é uma instalação limpa do Windows 10 (não uma atualização) a partir de uma unidade recém-formatada com a maioria das configurações padrão e os drivers de vídeo da nVidia via experiência GeForce usando as configurações padrão. Se você pode sugerir uma configuração que eu possa ajustar que resolva isso, forneça uma resposta para que eu possa verificar e conceder a recompensa.
psouza4
1
Para sua informação, criei um aplicativo .NET Windows Forms com MaximizedBounds = new Rectangle(500,500, 500, 500); WindowState = FormWindowState.Maximized;e consigo arrastá-lo do modo maximizado. A janela é imediatamente reduzida ao normal e se move para onde eu quero. (.NET 4.6)
Mik

Respostas:

2

Eu sei que esse é um tópico antigo, mas que me atormentou desde que mudei para o Windows 10, e eu o resolvi ontem à noite. Então, eu estou respondendo isso para possivelmente ajudar outras pessoas.

Primeiro, minha situação. Eu gerencio cerca de 16 servidores no meu escritório em casa. Criei conexões RDP salvas para cada servidor na minha área de trabalho. Todos os dias, faço logon em cada servidor usando essas conexões para verificar logs, status de hardware etc. Faço todos de uma só vez, pelo menos uma vez por dia, tenho 16 janelas RDP abertas ao mesmo tempo. O constante downsizing, e o encaixe na borda da tela, estava me deixando louco!

Aqui está o que eu fiz para corrigi-lo ...

Clicando com o botão direito do mouse em cada conexão RDP salva e selecionando 'abrir com' e escolhendo o Bloco de Notas, você pode obter um arquivo de texto sem formatação que define a conexão RDP (ao contrário do painel de propriedades típicas da GUI RDP). Em cada uma das minhas conexões salvas, alterei os 4 parâmetros a seguir: id do modo de tela, largura da área de trabalho, altura da área de trabalho e winposstr! Aqui está como eles são em uma das minhas conexões RDP salvas típicas:

screen mode id:i:1
desktopwidth:i:1280
desktopheight:i:1024    
winposstr:s:0,3,1575,160,2900,1230

O ID do modo de tela deve estar definido como 1. Isso faz com que a sessão remota apareça em uma janela.

A largura e a altura da área de trabalho são auto-explicativas ... mas podem ser qualquer coisa, desde que sejam menores que a tela em que você as visualiza.

Winposstr é o mais importante. Quando você abre o arquivo de conexão RDP salvo, o quinto e o sexto valores desse parâmetro serão muito menores em comparação com o terceiro e o quarto parâmetros do que no meu exemplo. Você precisa editar esses dois últimos valores ... aumentá-los! Para abrir a janela RDP em tamanho real, você deve adicionar a resolução vertical e horizontal desejada (mais um pouco a mais) ao terceiro e quarto números, respectivamente. Então 1575+1280=2855,. Se você colocar esse número exatamente para o quinto valor, ainda terá barras de rolagem. Portanto, neste caso, no meu sistema, coloquei 2900. Da mesma forma, 160 + 1024 = 1184. 1200 ainda me deram barras de rolagem, então tentei 1230 e funcionou.

Ainda não dediquei tempo para descobrir exatamente o que o terceiro e o quarto números representam. É óbvio que eles estão de alguma forma definindo a posição da janela na minha tela, mas eu simplesmente não descobri o relacionamento exato. E esses números provavelmente serão diferentes para você ... quando você salvar seu próprio arquivo de conexão RDP, eles provavelmente variarão porque você tem uma configuração diferente da minha. Mas o ponto é que você precisa adicionar as resoluções horizontal e vertical da janela RDP desejada ao terceiro e quarto número, quaisquer que sejam, MAIS um pouco mais, e depois substituir o quinto e o sexto número pelos resultados obtidos!

Depois de fazer a alteração, salve o arquivo e feche-o. Então, quando você clicar duas vezes nessa conexão RDP, ela deverá abrir em tamanho real e poder ser arrastada para a posição desejada, sem reduzir o tamanho automaticamente !!!!

No meu sistema, o canto superior esquerdo da sessão RDP definido pelos parâmetros acima será de 0 pixels abaixo da parte superior da minha tela e 3 pixels da borda esquerda. Você pode alterar a posição inicial editando esses valores ... por exemplo, 10,10 colocaria 10 pixels para baixo e dez da esquerda. Mas se você adicionar a esses valores, também precisará adicionar aos valores de 5 e 6 também. Como eu disse, ainda não descobri o relacionamento exato ... apenas saiba que se você os alterar, talvez seja necessário aumentar os valores de 5 e 6 para evitar barras de rolagem.

Finalmente, no meu sistema, tenho o parâmetro 'Impedir que o Windows seja organizado automaticamente quando movido para a borda da tela' desmarcado (isso está na seção 'facilitar o uso do mouse' na Central de facilidade de acesso).

ACL3
fonte
Bem-vindo ao superusuário. Lendo sua resposta, é claro que você tem uma solução funcional, no entanto, o Superusuário é um site de perguntas e respostas (versus um fórum) e espera-se que as respostas evitem detalhes de conversação. Edite o seu para se concentrar mais nas etapas específicas necessárias para implementar sua solução. Muitos detalhes dificultam a utilização de sua resposta por outros usuários. Obrigado por contribuir.
Eu digo Restabelecer Monica
Infelizmente, essa também não é uma solução aceitável para o problema descrito, que é específico do Windows 10 e não dos serviços de terminal / área de trabalho remota. Embora o problema seja observado nas sessões RDP, ele também é visto em outros aplicativos (como descrito na minha postagem). Além disso, a configuração 'impedir janelas de ...' no seu comentário faz parte do AeroSnap, que já foi discutido. Embora você tenha descoberto uma solução alternativa para um aplicativo (sessões RDP), ele não corrige muitos outros que também são pseudo-maximizados e, portanto, não podem ser aceitos. Obrigado pela tentativa detalhada.
Psouza4
0

Primeiro, algumas informações básicas. Costumo usar várias sessões RDP para conectar-se a diferentes sistemas remotos ao mesmo tempo. Cada janela RDP está configurada para 1280x768 no meu sistema que possui dois monitores em que cada monitor é 1920x1080.

No Win 10, quando abro uma visão RDP, a janela maximizada por psuedo fica presa no canto superior esquerdo e não pode ser arrastada para lugar nenhum. Como você relatou, as janelas RDP se comportaram de maneira diferente no Windows 7 e 8.

No entanto, descobri recentemente uma solução alternativa.

No Win 10, após abrir uma sessão RDP, "desmaximize" a janela RDP. Torna-se meio tamanho com barras de rolagem horizontais e verticais. Redimensione manualmente a janela RDP de tamanho médio até as barras de rolagem desaparecerem. Agora você pode arrastar a janela RDP manualmente "pseudo-maximizada" para qualquer lugar, da mesma forma que você pode no Windows 7 e 8. Tenha cuidado, no entanto. Se você acidentalmente clicar duas vezes na barra de título, a janela RDP retornará ao canto superior esquerdo, automaticamente "pseudo-maximizada" e se tornará imóvel novamente.

Embora não seja uma solução perfeita, é uma que posso tolerar.

cc8772850
fonte
Esta resposta não resolve o problema em todas as janelas pseudo-maximizadas. Veja minha postagem original usando um aplicativo de amostra não relacionado a sessões RDP e outros comentários. O foco não são as sessões RDP.
Psouza4
-1

Se eu considerar o seu comentário a informação mais precisa, teremos uma situação em que o tamanho da janela não manterá seu estado maximizado enquanto estiver sendo movido, mas não exige que você o minimize primeiro, como originalmente declarado na pergunta.

Supondo que o exposto acima é verdadeiro, o fluxo de trabalho usado em uma configuração de vários monitores (que funciona no Windows 7, 8 e 10) está arrastando a janela maximizada de seu local atual (fazendo com que a janela seja redimensionada para um tamanho menor), para o topo da outra tela, que coloca a janela de volta ao seu estado maximizado. Isso também funciona para maximizar uma janela que ainda não está maximizada.


Se o exposto acima não for uma solução aceitável e você tiver esgotado a experiência com as opções em Multitarefa> Snap, talvez uma edição do registro seja resolvida. A mesma WindowArrangementActiveentrada que controla o Aero Snap, conforme detalhado nesta resposta: /superuser//a/222609/61471 existe no Windows 8 e 10.

David Metcalfe
fonte
Infelizmente, acredito que minha pergunta original e os comentários anexados a ela descrevem sua resposta como uma proposta inaceitável. O comportamento observado nas versões anteriores do sistema operacional Windows (anterior ao Windows 10) permitiria que a janela fosse arrastada em seu estado totalmente maximizado (pseudo-maximizado, como uma janela RDP maximizada), sem qualquer alteração em seu estado maximizado e com o Windows Aero desativado. Mesmo em uma configuração sem multimonitor, a sessão RDP pseudo-maximizada poderia ser arrastada de uma região da tela para outra sem uma alteração no tamanho da janela. Não é mais o caso no Windows 10.
psouza4 18/11/2015
-1

Acabei de encontrar a resposta. Tive o mesmo problema. Nas propriedades do sistema, clique em multitarefa. Em seguida, ative "Organizar janelas automaticamente, arrastando-as para os lados ou cantos da tela" Resolvido esse problema de páginas da web maximizadas bloqueadas em cada monitor. 3 configuração do monitor aqui. Espero que isto ajude.

John Newell
fonte
Esta não é uma solução para o problema descrito, seja qual for. A configuração do seu comentário faz parte do AeroSnap, que já foi discutido. O problema prevalece em janelas pseudo-maximizadas (janelas que estão no estado maximizado enquanto não enchem o monitor inteiro, como conexões RDP).
precisa saber é o seguinte
-1

Estamos alguns anos à frente no futuro e eu tenho uma solução mais fácil para você. Edite o arquivo .rdp salvo com o bloco de notas e adicione abaixo da linha 'dimensionamento inteligente', para que a janela da sessão RDP seja maximizada para a resolução que você especificou.

dimensionamento inteligente: i: 1

William
fonte
Você pode elaborar um pouco mais sobre isso?
Toto
Isso pode ser uma solução alternativa para um programa, mas não corrige ou substitui o comportamento desejado. O RDP foi um exemplo facilmente testável no Windows, mas não foi o único aplicativo ofensivo.
psouza4