Redirection de DISPLAY
Résolu/Fermé
Char Snipeur
Messages postés
9813
Date d'inscription
vendredi 23 avril 2004
Statut
Contributeur
Dernière intervention
3 octobre 2023
-
9 sept. 2011 à 14:01
Char Snipeur Messages postés 9813 Date d'inscription vendredi 23 avril 2004 Statut Contributeur Dernière intervention 3 octobre 2023 - 11 oct. 2011 à 21:41
Char Snipeur Messages postés 9813 Date d'inscription vendredi 23 avril 2004 Statut Contributeur Dernière intervention 3 octobre 2023 - 11 oct. 2011 à 21:41
A voir également:
- Redirection de DISPLAY
- Display fusion - Télécharger - Divers Utilitaires
- Wireless display edenwood ✓ - Forum TV & Vidéo
- Ma télé edenwood ma wifi passe plus ✓ - Forum Téléviseurs
- L'url suivante, censée aboutir à un article, donne lieu à une redirection indiquant que la page n'a pas été trouvée. retrouvez la page recherchée. reportez le titre de l’article et son auteur. - Forum Microsoft Edge / Internet Explorer
- Display on moacloud - Forum Réseaux sociaux
3 réponses
zipe31
Messages postés
36402
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
27 janvier 2021
6 422
9 sept. 2011 à 14:20
9 sept. 2011 à 14:20
Salut,
Sans grande conviction....
Repasser ta tâche au premier plan (fg %1), suspendre le processus (CTRL+Z), exporter un autre display (export DISPLAY=192.168.1.2:0.0), repasser le processus en arrière-plan (bg).
Mais je doute de la manoeuvre ;-\
En plus, pour ton exemple avec un fichier texte et un éditeur, autant enregistrer les modifs du fichier, arrêter la tâche, changer de display et relancer la tache... non ? ;-)
Sans grande conviction....
Repasser ta tâche au premier plan (fg %1), suspendre le processus (CTRL+Z), exporter un autre display (export DISPLAY=192.168.1.2:0.0), repasser le processus en arrière-plan (bg).
Mais je doute de la manoeuvre ;-\
En plus, pour ton exemple avec un fichier texte et un éditeur, autant enregistrer les modifs du fichier, arrêter la tâche, changer de display et relancer la tache... non ? ;-)
Char Snipeur
Messages postés
9813
Date d'inscription
vendredi 23 avril 2004
Statut
Contributeur
Dernière intervention
3 octobre 2023
1 298
12 sept. 2011 à 12:53
12 sept. 2011 à 12:53
J'ai eu une petite révélation : regarder un code source d'application graphique X.
J'ai pris le modèle standard de création (un truc trouvé surement avec un IDE)
Le programme se connecte au serveur X spécifié par la variable d'environnement DISPLAY (ou une fourni en dur). La fonction qui fait ça retourne une structure "Display*" sur laquelle plein d'opération sont effectué, dont le fait de créer une fenêtre sur le serveur X.
Au final, je pense que c'est possible de changer de serveur X, à condition que ça soit prévu à la base dans le programme.
Il y a quelques étapes entre la connexion au serveur et la création effective de la fenêtre (notamment lié à la résolution).
Je pense donc qu'une commande du genre :
chX host:0.0 pid
a extrêmement peu de chance d'exister. Le seul espoir restant est qu'une telle possibilité ait été inclus dans les bibliothèques style QT.
J'ai pris le modèle standard de création (un truc trouvé surement avec un IDE)
Le programme se connecte au serveur X spécifié par la variable d'environnement DISPLAY (ou une fourni en dur). La fonction qui fait ça retourne une structure "Display*" sur laquelle plein d'opération sont effectué, dont le fait de créer une fenêtre sur le serveur X.
Au final, je pense que c'est possible de changer de serveur X, à condition que ça soit prévu à la base dans le programme.
Il y a quelques étapes entre la connexion au serveur et la création effective de la fenêtre (notamment lié à la résolution).
Je pense donc qu'une commande du genre :
chX host:0.0 pid
a extrêmement peu de chance d'exister. Le seul espoir restant est qu'une telle possibilité ait été inclus dans les bibliothèques style QT.
Oui c'est ce que j'imaginais aussi instinctivement : qu'en utilisant directement la libX, on pouvait dupliquer une fenêtre puis supprimer celle d'origine (avec les bons locks entretemps). Mais pour manipuler ça de l'extérieur...
J'avais pensé aussi à une sorte de "proxy X" (je ne sais pas si ça existe) qui sert de serveur X pour ton programme, et qui serait client du véritable serveur X cible, avec possibilité d'en changer à la volée. L'avantage, c'est que tu n'es plus dépendant du fait que ce soit prévu à la base dans le programme. Mais est-ce que ça existe ?
J'avais pensé aussi à une sorte de "proxy X" (je ne sais pas si ça existe) qui sert de serveur X pour ton programme, et qui serait client du véritable serveur X cible, avec possibilité d'en changer à la volée. L'avantage, c'est que tu n'es plus dépendant du fait que ce soit prévu à la base dans le programme. Mais est-ce que ça existe ?
Char Snipeur
Messages postés
9813
Date d'inscription
vendredi 23 avril 2004
Statut
Contributeur
Dernière intervention
3 octobre 2023
1 298
11 oct. 2011 à 21:41
11 oct. 2011 à 21:41
En cherchant comment avoir deux moniteurs sur mon PC (d'ailleurs, si vous avez une idée...;-/ )je suis tombé par hasard sur xmove https://en.wikipedia.org/wiki/Xmove
qui confirme qu'en effet on ne peut pas changer de serveur X une application, mais qu'en revanche il existe des "proxy", comme xmove justement.
Conclusion : ne jamais désespérer qu'un autre ait eu la même idée à la con que toi :-D
qui confirme qu'en effet on ne peut pas changer de serveur X une application, mais qu'en revanche il existe des "proxy", comme xmove justement.
Conclusion : ne jamais désespérer qu'un autre ait eu la même idée à la con que toi :-D
9 sept. 2011 à 14:42
Peut-être envoyer un SIGWINCH au processus après avoir changé le DISPLAY ? (mouais... pas convaincu)
9 sept. 2011 à 16:33
Bien entendu, kwrite était là pour l'exemple.
J'ai testé, vos solutions ne fonctionnent pas.