Я хочу открыть окно консоли моего командного файла в определенном месте на экране. Я искал в гугле, но решения для этого не нашел. Мне нужно четыре небольших окна консоли, по одному в каждом углу экрана.
Проверю спасибо
Я не могу найти решение, пожалуйста, помогите мне в этом





@echo off
setlocal
if /i "%~1" == "/4way" (
console4way "%~f0" %*
exit /b
)
echo Running %*
console4way
#pragma compile(Out, console4way.exe)
Global $aPid[4]
; Run ComSpec (usually set as CMD) with arguments for the 1st instance.
$aPid[0] = Run('"' & @ComSpec & '" /k ' & StringReplace($CMDLINERAW, '/4way', '', 1))
For $i1 = 1 To 3
$aPid[$i1] = Run('"' & @ComSpec & '"')
Next
; Give time for all windows to display.
Sleep(500)
; Get list of all console class windows.
$aWinList = WinList('[CLASS:ConsoleWindowClass]')
For $i1 = 1 To UBound($aWinList) -1
; Get current window handle from the list.
$hWindow = $aWinList[$i1][1]
; Get position and sizes of current window.
$aPos = WinGetPos($hWindow)
; Move windows if process id matches.
Switch WinGetProcess($hWindow)
Case $aPid[0]
WinMove($hWindow, '', 0, 0)
Case $aPid[1]
WinMove($hWindow, '', @DesktopWidth - $aPos[2], 0)
Case $aPid[2]
WinMove($hWindow, '', 0, @DesktopHeight - $aPos[3])
Case $aPid[3]
WinMove($hWindow, '', @DesktopWidth - $aPos[2], @DesktopHeight - $aPos[3])
EndSwitch
Next
один только командный файл кажется неспособным выполнить эту задачу без внешняя помощь.
Вам может понадобиться что-то, что может обрабатывать 4 окна по их ручки и переместите их в нужное положение. Возможно, потребуется распознать 4 окна по идентификатору процесса. чтобы убедиться, что обрабатываются правильные окна.
Код console4way - AutoIt3.
Пакетный файл, если он выполняется с /4way в качестве 1-го аргумента,
выполнит console4way.exe. 4 консольных процесса будут
выполнить, и произойдет короткий сон, чтобы окна
появляться.
WinList получит окна консоли по классам.
Каждый дескриптор окна используется для получения позиции, размера и идентификатора процесса.
При сопоставлении каждого идентификатора процесса текущее окно перемещается в
положение в углу рабочего стола, как указано.
Ширина и высота окон не указана.
WinMove позволяет еще 2 параметра для ширины и высоты.
$aPos[2] и $aPos[3] - это ширина и высота
текущее окно консоли.
Запустите командный файл с аргументом /4way, чтобы
инициировать командный файл для выполнения console4way,
иначе он будет выполняться без console4way.
Вы можете добавить дополнительные аргументы после аргумента /4way
если вы хотите передать аргументы командному файлу для использования.
Скомпилируйте console4way.au3 в исполняемый файл, чтобы он соответствовал разрядности ОС
так что он выполняет ComSpec той же среды.
О console4way
console4way - это команда для выполнения console4way.exe.
У вас может быть ваш скрипт au3 с именем console4way.au3
(который представляет собой текстовый файл, содержащий приведенный выше код).
Используйте файл сценария au3 для компиляции console4way.exe
с предоставленными инструкциями.
После компиляции вам понадобится только командный файл и
console4way.exe должен находиться по тому же пути и выполнить
командный файл для тестирования.
Вы можете сохранить скрипт au3 и использовать его позже
если вы хотите снова скомпилировать или обновить код.
Инструкция по компиляции console4way.au3:
с установщиком:
console4way.au3 и выберите
Compile Script (x64) для 64-битной ОС, иначе
Compile Script (x86) для 32-битной ОС.console4way.exe.или на молнии:
install\Aut2Exe и запустите Aut2Exe.exe.
Если в 64-битной ОС, вы можете вместо этого запустить Aut2Exe_x64.exe.
Оба варианта будут работать одинаково для компиляции в исполняемый файл x86 или x64.console4way.au3.console4way.exe.console4way.exe будет автономным исполняемым файлом, который может
выполняться в ОС без установленного AutoIt.
Дополнительный:
Просмотрите страницу справки о скриптах Компиляция с Aut2Exe.
Спасибо, Мичил за ваш ответ, но все же я немного запутался в реализации кода, не могли бы вы объяснить, как реализовать этот код, я имею в виду, console4way - это отдельный файл, что такое console4way.exe, расскажите мне, как реализовать свой код .
Я добавил разделы О console4way и Инструкции по компиляции, чтобы решить ваши проблемы, упомянутые в вашем комментарии.
Может это Установите положение окна приложения через командную строку