Змініть розташування дисплея за допомогою пакетної / командної лінії в Windows 7


11

Я хочу змінити розташування дисплея свого комп'ютера через командний рядок. У мене встановлено, розширюються два монітори, і я хочу змінити налаштування моніторів з подвійного дисплея на єдиний дисплей і назад за допомогою командного рядка.

Я переглянув QR-коди та nircmd. У той час як QR-повідомленням повністю не вистачає багатомоніторної підтримки, nircmd не може відключити монітор, лише змінити первинний стан та роздільну здатність окремих екранів.

Буде вдячно, якщо ви знаєте спосіб зробити це.

Редагувати: Я опублікую тут своє рішення, використовуючи змінник дисплея у відповіді кліменоли:

@echo off
REM setting to single screen
echo *** Disabling Screen 2 *** 
cd C:\Program Files (x86)\12noon Display Changer\
dc64cmd.exe -monitor="\\.\DISPLAY2" -detach

echo Starting TF2 -fullscreen -novid -console -w 1920 -h 1200
REM Starting Team Fortress 2 fullscreen
cd C:\Program Files (x86)\Steam
Steam.exe -applaunch 440 -fullscreen -novid -console -w 1920 -h 1200

REM pausing because steam.exe returns before TF2 quits
echo Press a key to reenable Screen 2
pause
cd C:\Program Files (x86)\12noon Display Changer\
dc64cmd.exe -monitor="\\.\DISPLAY2" -secondary

Ваше повідомлення фактично дало мені ідею для цієї функції, яку я додав до TvGameLauncher. Перевірте це, якщо це все ще актуально (Дивіться мою відповідь нижче).
Охад Шнайдер

Гей, я знаю, це питання давнє, але я хочу знати, чи є спосіб виявити наявність іншого монітора в Windows із командного рядка?
Durga Swaroop

Відповіді:


8

Ця утиліта може допомогти вам: Changer Display :

«Display Changer змінює роздільну здатність дисплея, запускає програму, після чого відновлює початкові налаштування. Він також може постійно змінювати роздільну здатність і переставляти монітори під час налаштування декількох моніторів »

Працює в GUI або командному рядку, і це безкоштовно для персонального користування ...

http://12noon.com/?page_id=80

Сподіваюся, що це допоможе. Дайте нам знати.


Підтвердьте хорошу відповідь, але це не вийде. Я так намагаюся запустити гру Steam. Запуск через "steam: // rungameid / #" не працює, оскільки він не дає виконуваного файлу. запуск steam.exe з опцією -applaunch # змінює роздільну здатність, не запускає гру і негайно змінює назад (так швидко, що ви навряд чи це бачите). запуск виконуваної гри безпосередньо призводить до помилки завантаження. Хороша ідея, але вона не спрацювала.
private_meta

Але я щойно зрозумів, що можу створити пакетний файл із початковою командою для переходу на один екран, запустити гру в окремому командному рядку, а потім змінити назад після завершення програми, все в пакеті, який теоретично повинен працювати. Мені доведеться це спробувати.
private_meta

Гаразд. Розкажіть, чи працює це для вас. Якщо пакет працює добре, ви можете скомпілювати його з файлом .exe. Наприклад, наприклад: batchcompiler.sourceforge.net :)
climenole

Дякую. Це працює чудово, за винятком того, що steam.exe повертається негайно, тому мені доведеться використовувати "паузу", або пакет не працюватиме.
private_meta

5

Ви були поруч з NirCmd, але те, що ви шукаєте, це Nir's MultiMonitorTool :

MultiMonitorTool - це невеликий інструмент, який дозволяє виконувати деякі дії, пов’язані з роботою з декількома моніторами. За допомогою MultiMonitorTool ви можете відключити / включити монітори, встановити основний монітор, зберегти та завантажити конфігурацію всіх моніторів та перемістити вікна з одного монітора на інший. Ви можете виконувати ці дії з інтерфейсу користувача або з командного рядка, не відображаючи інтерфейс користувача. MultiMonitorTool також пропонує вікно попереднього перегляду, яке дозволяє переглядати попередній перегляд кожного монітора у вашій системі.

Інструмент 12 день виглядає чудово, але, не будучи офіційним інструментом MS, я прийму NirSoft над будь-яким іншим інструментом в будь-який день.

Безсоромний штекер: Вас може зацікавити інструмент TvGameLauncher, який я написав саме для цієї мети (перемикання основних дисплеїв для ігор). Він також може переключитися на аудіо HDMI і запобігти появі заставки під час відтворення (не відключаючи). Він навіть підтримує протокол Steam ( Steam://), тому вам не доведеться використовувати pauseфокус. Він не підтримує відключення інших моніторів, але я додам це до свого списку todo (у мене є інші цікаві функції, такі як автоматичне створення телевізійних ярликів).

Редагувати - всі функції додані. Перевір!


1
NirSoft скелі. Мені просто довелося знайти рішення, щоб переключити монітори. У мене встановлення двох моніторів, коли один із них увімкнено, а інший вимкнено. Так що жодного фантазійного розширеного режиму робочого столу тощо. З MultiMonitorTool тепер у мене є лише одна однолінійка: MultiMonitorTool.exe /switch 1 /switch 2яка вимикає поточний монітор і одночасно вимикає інші. Я поклав цю команду на клавішу макросу моєї клавіатури, і тепер монітори перемикаються одним натисканням клавіші!
TranslucentCloud

MultiMonitorTool погано працював для мене з різними конфігураціями з 3 моніторів: деякі відключені, клоновані тощо. Він застосував деякі конфігурації з роздільною здатністю 0x0, через що панель управління Nvidia не змогла відкритись.
NateS

5

Велика подяка за коментар Білла Родмена в цій темі.

Я поєдную цю утиліту з командою Windows7 DisplaySwitch.exe: "C: \ Windows \ System32 \ DisplaySwitch.exe / Internal", щоб виключно переключитися на головний монітор. - Білл Родман 29 січня '10 о 12:17

Перевіривши це, цей дзвінок і негайно вибирає екран, який потрібно вибрати через.

  • / внутрішні дзвінки на внутрішній екран (ваш основний дисплей)
  • / зовнішні зміни зовнішнього екрана (я не впевнений, наскільки добре він обробляється, коли є більше одного екрана)
  • / Клон дублює дисплеї.
  • / розширити перемикачі до розширених налаштувань.

Оскільки це викликає шлях до файлу, просто приєднайте це до свого пакетного сценарію та baboom, миттєвого та ефективного зміни дисплея. Доброю ідеєю було б ввести цей перемикач у інтерфейс інтерфейсу Windows Task Scheduler, як ви можете викликати шлях до файлу, і надати йому аргументи, і тоді, коли трапиться ваша подія TF2, дисплей завжди буде перемикатися.


3

Хоча я розумію, що це стара тема, перемикання режимів відображення в Windows 10 за допомогою інструментів, доступних за замовчуванням, можливо. Проблема, з якою я зіткнувся, полягала в тому, що не було "чіткого" механізму, який би міг сказати, що дисплей розширений, проти клонований. Ось мій робочий прототип у PowerShell:

#ext_or_clone.ps1
#Toggle between Extend and Clone displays
#requires PowerShell 3

#Load Windows Forms .Net class
#if PowerShell < 3 use this instead: [reflection.assembly]::loadwithpartialname("System.Windows.Forms") | Out-Null
Add-Type -AssemblyName System.Windows.Forms

#check the width of the virtual display, the "mode" width 
$currDispMode = [System.Windows.Forms.SystemInformation]::VirtualScreen.Width

#check the width of the primary display
$oneScrWidth = [System.Windows.Forms.SystemInformation]::WorkingArea.width


#compare the two widths
switch ($currDispMode)
{
    #if the widths are the same,
    # it means the displays are in clone mode, so the mode should be extend
    $oneScrWidth{displayswitch.exe /extend}

    #if the VirtualScreen width is greater than the primary screen width
    # it means displays are in extend mode, so the mode should be clone
    {$_ -gt $oneScrWidth}{displayswitch.exe /clone}
}

1

Ще один хороший wsdisplaysettings. Інструмент командного рядка для налаштування дисплеїв на ваш смак. Для зручності також можна створити файли налаштувань.



Збиває близько 80% часу в Windows 10. Це робить інші 20%.
NateS

1

Налаштування дисплея WSardSoft WS - це акуратний маленький інструмент і досить простий у використанні для початківців командного рядка:

Інструмент командного рядка для збереження та відновлення налаштувань відображення Windows у файл та з нього. Проста налаштування мультимонітора. Створіть пресети для ноутбука, телевізора, монітора та передавача. Він може зберегти та відновити точне двійкове представлення поточних налаштувань дисплея Windows.

Я хотів - це ярлик для переходу на розширений та інший для повернення до одиничного відображення. Після 30 хвилин спілкування з цим - успіх!

Я використовував Windows 7, і після читання readme.txtви також можете легко встановити це.

Найпростіший спосіб використання інструменту - збереження поточних налаштувань дисплея у файл із

WsDisplaySettings.exe -save filename.dis

і завантажте та застосуйте налаштування за допомогою

WsDisplaySettings.exe filename.dis

Також є більш вдосконалені функції, як це пояснено у файлі readme.

Якби я керував бізнесом, я б заплатив за програму! (Це безкоштовно для особистого використання.)


2
Ласкаво просимо до Супер Користувача! Прочитайте, як рекомендувати програмне забезпечення у відповідях , зокрема, шрифти, виділені жирним шрифтом ; потім відредагуйте свою відповідь, щоб дотримуватися там вказівок. Дякую!
bertieb
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.