Como posso compartilhar uma única janela do aplicativo com o TightVNC?

5

Estou procurando uma ferramenta que permita o compartilhamento de janela única usando o VNC. A partir da nova página do TightVNC em TightVNC 1.3dev1, versão de desenvolvimento (instável) do Win32 , diz

Implemented partial screen sharing. Any single window or any rectangular screen area can be shared instead of the whole screen. The position and dimensions of the shared screen area can be changed dynamically, and client windows will adjust their dimensions on the fly. The user interface to choose shared screen area is very intuitive and easy to use.

Não sei se isso significa que está disponível apenas para a versão do Windows ou não. Esta questão não diz que é apenas para janelas, mas não descreve como configurá-lo.

Instalei o servidor TightVNC em um servidor Ubuntu. É versão

:~$ vncserver -h
TightVNC Server version 1.3.9

Instalei ubuntu-desktop no servidor e consigo visualizar toda a área de trabalho com êxito.

Minha pergunta é, é possível compartilhar uma única janela ou aplicativo do linux? Se sim, como faço para isso? Se não, existe uma ferramenta de código aberto diferente que eu possa usar para fazer isso?

    
por Craigy 24.02.2012 / 21:58

3 respostas

5

Xpra e winswitch também podem valer a pena olhando - o primeiro é um software tipo tela para mover janelas entre sistemas, e o outro é um frontend para isso. Parece ter compressão e tal, e permite transferir janelas entre plataformas

    
por 25.02.2012 / 08:31
5

Você pode tentar usar x11vnc para compartilhar uma única janela, fazendo:

  1. Execute o xwininfo a partir de um console. Isso mudará seu cursor. Clique na janela que você deseja compartilhar. xwininfo imprimirá o ID da janela.
  2. Executar: x11vnc -id {replace-by-window-id}

fonte

Você também pode ter um olhar para o SharedAppVNC .

    
por 25.02.2014 / 21:20
3

Os servidores Linux VNC funcionam de maneira diferente dos servidores Windows VNC.

Especificamente, o tightvnc não compartilha o conteúdo da tela física local sobre o protocolo VNC - em vez disso, cria uma sessão X11 (GUI) separada, com uma exibição virtual, e compartilha o conteúdo dessa exibição virtual sobre o VNC.

No Windows, não havia conceito de sessões GUI separadas por muito tempo, até recentemente via Remote Desktop, que é uma solução híbrida. O que significa que os servidores Windows VNC espelham essencialmente o conteúdo do monitor primário em sua própria memória e enviam essa cópia virtual sobre o VNC. Por isso, às vezes é desejável poder limitar qual parte de uma exibição física será espelhada - daí, o recurso.

No Linux, você pode tentar criar uma tela VNC de tamanho arbitrário (já que não é limitada por nenhum hardware físico, tente a opção -geometry ), e rodar sua aplicação dentro, em tela cheia ... o que chegaria perto ou use o encaminhamento X11 nativo que basicamente cria uma janela em uma máquina linux remota. X11, infelizmente, não é comprimido.

    
por 25.02.2012 / 06:08