Gerer par programmation deux ecrans avec une seule unité centrale

cs_juguinfo Messages postés 8 Date d'inscription samedi 15 mars 2008 Statut Membre Dernière intervention 23 février 2009 - 21 août 2008 à 14:39
SebLinck Messages postés 212 Date d'inscription mardi 17 mai 2005 Statut Membre Dernière intervention 23 juin 2011 - 22 août 2008 à 14:43
actuellement je veux developper une application qui peu contrôler deux écrans branchés à une seule unité centrale à l'aide d'une carte graphique.
si vous voulez actuellement je n'est aucune idée sur la façon de procéder, alors se que je vous demande, c'est de m'orienté un peu  au minimum, par exemple de me donner une source de doccumentation,....
normalement je developpe l'application avec c++.
merci à l'avance pour votre aide qui est toujours précieuse.

3 réponses

fregolo52 Messages postés 1114 Date d'inscription mercredi 15 juin 2011 Statut Membre Dernière intervention 6 mai 2021 4
21 août 2008 à 15:14
Je ne peux pas t'aider niveau dév.

Mais dans mon ancien boulot on avait des applis qu'on faisait tourner sur bi-écran, et suivant qu'on avait des PC avec nVidia ou ATI, le comportement de l'appli n'était pas le même.

Je ne sais pas quel est ton but, mais tu peux t'attendre à des surprises en fonction de la marque de la carte graphique et son mode d'utilisation (bureau étendu, clone ...).

Nous, on prennait le mode bureau étendu de nVidia, ce qui faisait croire à Windows qu'on avait qu'un seul écran (alors que physiquement il y en a 2).


Il faut donc peut-être t'orienter vers l'utilisation des API des GPU, donc spécifique à une marque.

bon courage
0
racpp Messages postés 1909 Date d'inscription vendredi 18 juin 2004 Statut Modérateur Dernière intervention 14 novembre 2014 17
21 août 2008 à 20:34
Salut,
Sous Windows, il existe des APIs pour ça:
EnumDisplayMonitors()
GetMonitorInfo()
Par exemple, pour dessiner directement sur le deuxième écran, on peut ensuite utiliser CreateDC() pour avoir un device context et travailler dessus.
Voir la page MSDN
0
SebLinck Messages postés 212 Date d'inscription mardi 17 mai 2005 Statut Membre Dernière intervention 23 juin 2011
22 août 2008 à 14:43
Salut,
 
Tout simplement, tu crées un second affichage en fonction de la résolution de l'écran principal ( pour moi 1024)
AffSecondaire = CreateWindowEx(0, "STATIC", NULL, WS_VISIBLE | WS_POPUP, mResolx, 0, 1024, 768, m_hWnd, NULL, NULL, NULL);

et ensuite tu affiche dessus..

Cordialement,
Sébastien.
0
Rejoignez-nous