Comment puis-je activer un deuxième écran en C#?
Est-il possible d'activer un deuxième écran par programmation et d'étendre le Bureau Windows sur en C#? Il doit faire l'équivalent de tourner sur la case à cocher dans l'image ci-dessous.
Vous devez vous connecter pour publier un commentaire.
MSDN Contexte de Périphérique Fonctions
Ce que vous devez faire:
DISPLAY_DEVICE structure de l'importation à l'aide de PInvoke
EnumDisplayDevices de la fonction d'importation
EnumDisplaySettingsEx de la fonction d'importation
etc. les autres fonctions peuvent être trouvés avec une recherche simple par nom.
Si vous avez windows 7, ensuite il suffit de commencer un processus:
puis DisplayChanger.Start();
Je n'ai pas la réponse ici, mais je suis presque certain que vous aurez à communiquer à l'extérieur de .Net pour cela. Vous devrez utiliser Pinvoke d'appeler une dll non managée. Une excellente ressource pour ce qui est pinvoke.net.
J'ai fait une rapide recherche et trouvé http://www.pinvoke.net/default.aspx/user32/ChangeDisplaySettings.html qui n'est probablement pas exactement ce que vous voulez, mais vous trouverez probablement quelque part sur pinvoke.net
Je suis à la recherche pour la même solution. J'ai écrit le code suivant pour appeler
ChangeDisplaySettingsEx
avec PInvoke:Si le moniteur est déjà activé, cela change la résolution avec succès. Mais si le moniteur n'est pas attaché à l'ordinateur de bureau déjà, ce ne sera pas l'activer. Donc quelqu'un aurait-il un exemple de code qui fonctionne?
Pour permettre à un moniteur, réglez sa position à autre chose qu'à 0,0, comme illustré: