Faz uma biblioteca cliente RDP sob exist Linux?
-
21-08-2019 - |
Pergunta
Existem quaisquer bibliotecas para a conexão como um cliente via Remote Desktop Protocol (RDP) em Linux? A linguagem utilizada é secundário para a questão da existência. Qualquer língua dominante faria (por exemplo, C ++, Perl, Java, Ruby, PHP, Python), e até mesmo os menos populares como OCaml ou Scheme.
Existe alguma opção disponível que não seja tomada a fonte rdesktop e hacking uma biblioteca fora dessa?
Solução
Há um conjunto de multi-plataforma de fonte aberta bibliotecas RDP disponíveis no projeto FreeRDP. Eles são escritos em C e sob licença Apache 2.0. Consulte http://www.freerdp.com
Outras dicas
Digitação RDP em minha ferramenta Mandriva Software Managment revelou libxrdp que é uma biblioteca que xrdp depende mas eu não sei os detalhes por isso não pode ser o que quiser.
O site do projeto é xrdp.sourceforge.net .
rdesktop vai ser a sua melhor opção. O código é bastante limpo e eu não acho que fazer uma biblioteca seria um grande negócio.
Outra opção, se você preferir Java é a ProperJavaRDP Cliente http://properjavardp.sourceforge.net/ . É quase um porto estreito de rdesktop.
Você pode olhar para essas implementações:
-
FreeRDP
(Apache License) -. PrincipalmenteC
-
FreeRDP
C#
ligações -
FreeRDP-WebConnect
para o material HTML5 -
rdesktop
(GPLv2) - principalmenteC
.
-
rdpy
(GPLv3) -python
mas o material bitmap é escrito emC
(empréstimos código derdesktop
) -
properJavaRDP
(GPL) -java
implementações não portáteis:
E os documentos de referência:
- http://msdn.microsoft.com/en-us/library/ cc240445.aspx
- http://msdn.microsoft.com/en-us/library/ cc240452.aspx (fluxos de mensagens / sequência de ligação)
Desculpe, mas um strace rápida e nm de rdesktop não revelam nada além X, cripto, e libs compressão.
rdesktop
não permite embutir em outras janelas, como se não servir o seu propósito?
Veja a opção -X
em help
Você poderia incorporar rdesktop em uma janela de seu próprio por J-16 sugestão de SDIZ e, em seguida, enviar eventos X.org para essa janela de programação. A rota similar seria instalar um servidor VNC na máquina Windows e executar um cliente VNC na máquina Linux. Dessa forma, você também pode enviar programaticamente eventos X.org para o cliente VNC.
Isto é o que browsershots.org usa para controlar programaticamente vários navegadores da web em uma maneira de plataforma cruzada através de Python. Ter um olhar para o diretório gui
se o código browsershots.org origem cliente
Eu comecei xrdp ao trabalho com RHEL no EC2: xrdp.org