2009-02-27 9 views
5

J'utilise un ordinateur portable comme poste de travail principal. Parfois je travaille seul dessus, mais une partie importante du temps, je suis à mon bureau et je branche un moniteur externe pour augmenter mon espace de travail.Automatiser la configuration du double moniteur sous Vista

Chaque fois que j'effectue cette action, je clique sur les mêmes boîtes de dialogue dans Windows Vista pour configurer le double écran et positionner la fenêtre. Cela semble être une tâche répétable que je pourrais automatiser. Je voudrais être en mesure de brancher mon câble de moniteur, double-cliquez sur un programme et le configurer automatiquement le moniteur.

Quel type de programme pourrait faire cela? Je n'ai pas trouvé beaucoup en ligne qui se rapporte. Je pense à essayer un script autohotkey, ou l'API Windows Accessibility avec PowerShell. Ce problème a-t-il déjà été résolu? Clarification: Je cherche spécifiquement à automatiser les étapes que j'utilise avec ma souris qui invoquent la fonctionnalité de base dans Windows Vista.

  1. Faites un clic droit sur le bureau
  2. Sélectionnez Personnaliser dans le menu contextuel
  3. paramètres d'affichage Cliquez
  4. Cliquez sur Moniteur # 2, puis cliquez sur case à cocher « Étendre le bureau à ce moniteur »
  5. Cliquez et moniteur de glisser # 2 à la gauche de l'écran # 1
  6. Cliquez sur OK pour fermer la boîte de dialogue
  7. Cliquez sur Oui dans la fenêtre contextuelle suivante pour accepter ces paramètres du moniteur

Mise à jour: Windows 7 fait automatiquement

Je viens de mis à niveau vers Windows 7 et il se rappela mes réglages double écran. Je les ai mis une fois au travail comme indiqué ci-dessus, puis débranché et travaillé à la maison pendant le week-end. Je suis arrivé le lundi matin, démarré, branché et whammo! Ça a juste marché. Merci Windows 7!

Répondre

0

Me voici, trois ans plus tard, répondant à ma propre question! Yay!!!

Ceci est facilement scénarisé avec http://www.autohotkey.com

Voici un exemple de script pour la permutation entre un moniteur et deux moniteurs avec Windows + 1 et Windows + 2. AutoHotKey permet également de cliquer et de faire glisser le comportement qui serait nécessaire pour échanger la position du second moniteur.

#NoEnv ; Recommended for performance and compatibility with future AutoHotkey releases. 
#Warn ; Recommended for catching common errors. 
SendMode Input ; Recommended for new scripts due to its superior speed and reliability. 
SetWorkingDir %A_ScriptDir% ; Ensures a consistent starting directory. 
#1:: 
Send {LWin} 
WinWaitActive Start menu 
Send Adjust Screen Resolution 
Send {enter} 
WinWaitActive Screen Resolution 
ControlClick ComboBox3 
Send {PgDn} 
Send {Up} ; Select "Show desktop only on 1" 
Send {enter} 
Sleep 3000 ; workaround - cannot select accept/revert window? 
Send {left} 
Send {enter} ; accept changes 
Return 
#2:: 
Send {LWin} 
WinWaitActive Start menu 
Send Adjust Screen Resolution 
Send {enter} 
WinWaitActive Screen Resolution 
ControlClick ComboBox3 
Send {PgDn} 
Send {Up} 
Send {Up} ; Select "Extend these displays" 
Send {enter} 
Sleep 3000 ; workaround - cannot select accept/revert window? 
Send {left} 
Send {enter} ; accept changes 
Return 
+0

Si vous possédez une carte ATI, Catalyst intègre cette fonctionnalité. Configurez une configuration, enregistrez-la et attribuez-lui une raccourci clavier globale. – Brian

0

Essayez UltraMon pour une excellente prise en charge de deux moniteurs. Je l'utilise depuis des années sur différents ordinateurs portables et ordinateurs de bureau et ça fonctionne très bien. J'ai seulement utilisé XP alors je ne suis pas sûr de savoir comment cela fonctionne avec Vista.

+0

J'ai utilisé UltraMon tout à l'heure. Mon but est d'automatiser la configuration de l'écran, je ne suis pas au courant d'un moyen d'exécuter un programme et UltraMon configurer automatiquement mes moniteurs à une configuration prédéterminée. Il y a un clic, n'est-ce pas? – a7drew

+0

Bon point. En cliquant sur dans ultramon, je ne vois pas les paramètres pour configurer les affichages de cette façon. Il fait plus en termes de personnalisation de la fenêtre. – slolife

0

Mon Leovo T60p le fait automatiquement sans étapes spéciales. Essayez de mettre à jour vos pilotes vidéo et consultez le site du fabricant pour les utilitaires qui peuvent le faire.

0

Si vous avez Windows Vista ou 7 vous pourriez frapper le windows_key + P. Vous avez un tas d'options pour sélectionner, notamment Extend

+0

Cela pourrait retourner sur un moniteur connecté, non? Je ne suis pas sûr que cela va aider aveC# 5 dans ma liste si: en faisant glisser le moniteur supplémentaire sur le côté gauche de mon moniteur d'ordinateur portable. – a7drew

0

Je crois que ultramon travaillerait en fait. Dans le menu contextuel de l'icône Ultramon de la barre des tâches, il y a une commande "disable/enable secondary".

Je pense que vous pouvez simplement:

  1. prise dans le second moniteur
  2. sélectionner « activer secondaire »
1

Je ne l'ai pas vu un utilitaire existant qui fait cela, mais il serait assez facile d'en écrire un en utilisant les API Win32.Via this page, EnumDisplayDevices obtient une liste des dispositifs d'affichage, EnumDisplaySettingsEx obtient les paramètres actuels et ChangeDisplaySettingsEx apportera les modifications.

Le champ DEVMODE.dmPosition doit contenir les coordonnées virtuelles du coin supérieur gauche de l'écran, le moniteur principal étant toujours (0,0) et les autres relatifs à celui-ci.

L'outil nécessite deux modes, le premier enregistre les paramètres actuels dans un fichier de configuration et le second applique les paramètres de la configuration. Je stocker/récupérer uniquement l'index du périphérique d'affichage, le nom et chacun des champs DEVMODE.dm * mentionnés dans les documents ChangeDisplaySettingsEx. Une configuration basée sur le texte permet des modifications manuelles.

Questions connexes