Как использовать CMD или AutoIT для перемещения окна Windows на другой рабочий стол?

Можно ли с помощью CMD или AutoIT перемещать окна на другой рабочий стол в Windows 10? Я хочу реализовать автоматическое перемещение окон виртуальной машины на другой рабочий стол, чтобы они не мешали.
Изображение к вопросу
  • 6 октября 2023 г. 14:57
Ответы на вопрос 2
С помощью CMD или AutoIT нельзя напрямую перемещать окна на другой рабочий стол в Windows 10, так как эти инструменты не предоставляют специальных команд для управления рабочими столами. Однако, вы можете использовать общедоступные инструменты автоматизации, такие как AutoHotkey, для решения этой задачи.

AutoHotkey — это скриптовый язык и программа для автоматизации задач в Windows. Вот пример использования AutoHotkey для перемещения окна на другой рабочий стол:

1. Установите AutoHotkey с официального сайта https://www.autohotkey.com/.
2. Создайте новый текстовый файл и откройте его в редакторе кода.
3. Вставьте следующий код в файл:

```
#NoEnv
SetWinDelay, -1
SendMode Input

; Передвигаем окно на другой рабочий стол
MoveWindowToDesktop(desktopNumber, processName)
{
    ; Переключаемся на нужный рабочий стол
    Send ^#{right %desktopNumber%}
    ; Ожидаем некоторое время для переключения рабочего стола

    ; Находим окно по имени процесса
    WinGet, windowID, ID, %processName%
    if (windowID != "")
    {
        ; Если окно найдено, активируем его
        WinActivate, ahk_id %windowID%
        ; Ожидаем некоторое время для активации окна

        ; Получаем текущие координаты окна
        WinGetPos, posX, posY, width, height, ahk_id %windowID%
        ; Перемещаем окно на новый рабочий стол
        WinMove, ahk_id %windowID%,, posX, posY, width, height
        ; Ожидаем некоторое время для перемещения окна
    }
}

; Пример использования функции перемещения окна на рабочий стол номер 2 и с именем "Notepad.exe"
MoveWindowToDesktop(2, "Notepad.exe")
```

4. Сохраните файл с расширением ".ahk" (например, "move_window.ahk").
5. Запустите скрипт AutoHotkey, дважды кликнув по файлу с расширением ".ahk".
6. Откройте виртуальную машину и убедитесь, что у вас есть несколько рабочих столов в Windows 10.
7. Как только окно с именем "Notepad.exe" будет активировано, оно переместится на второй рабочий стол.

Обратите внимание, что MoveWindowToDesktop(2, "Notepad.exe") перемещает окно с именем "Notepad.exe" на второй рабочий стол. Вы можете изменить этот код для подстройки под ваши нужды, указав номер рабочего стола и имя процесса окна, которое нужно переместить.

AutoHotkey также предоставляет другие возможности для настройки поведения окна, такие как изменение его размера или позиции. Вы можете найти больше информации о функциях AutoHotkey в его официальной документации.
Если вам нужно переместить окно на другой рабочий стол, просто перетащите его в нужную сторону. Координаты объектов на "правом" окне должны быть больше, чем у основного окна. 
Чтобы настроить взаимное расположение мониторов, перейдите в "Параметры экрана" и просто перетащите мышкой. 
Вы также можете использовать метод autoitWinMove, чтобы переместить окно на другой рабочий стол. Необходимо вызвать контекстное меню и выбрать нужную опцию перемещения окна.
Похожие вопросы