Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   AutoIt (http://forum.oszone.net/forumdisplay.php?f=103)
-   -   cmd.exe WindowPosition (CUI-script) (http://forum.oszone.net/showthread.php?t=188472)

semiono 16-10-2010 03:42 1519905

cmd.exe WindowPosition (CUI-script)
 
Есть проблемма, вот такое работает только после перезапуска скрипта:

Код:

RegWrite("HKCU\Console","WindowPosition","REG_DWORD",0x00800020) ; любое новое значение
Run(@ProgramFilesDir & "\Far\Far.exe")

Почему-то консольные программы не успевают записать и прочитать реестр.
Я начал писать на макроассемблере, здесь лишь побыстрому набросал скрипт, в надежде что может через MoveWindow или ещё что нибудь
какое нибудь решение найдётся. Но мне нужно запуск приложения, например, Far.exe с параметрами в случае запуска из консоли.
Например, так # Far.exe /?

Когда я использовал GUI формат, то проблема возникла с тем, что окно всегда открывается в новом "сеансе дос", это не желательно!

Если никто ничего не понял, мне надо чтоб консоль открывалась по установленным координатам.
У MSDN API есть ещё неудобство в том, что надо указывать размеры консоли, а не только координаты,
а размеры устанавливаются в пикселах. У консоли же в зависимости от шрифта вообще не понятно какой размер,
она игнорирует установки обычные для окон. Вообщем я запутался.

Creat0R 16-10-2010 04:51 1519911

Форум русскоязычный, поэтому и названия тем следует писать по русский.

Iska 16-10-2010 06:22 1519915

У меня работает — что для GUI, что для CUI-версий. Естественно, для AutoIt.

Почему Вы не пишете для «far.exe» в раздел:
Код:

HKEY_CURRENT_USER\Console\C:_Program Files_Far_Far.exe
или, для версии 2.0:
Код:

HKEY_CURRENT_USER\Console\C:_Program Files_Far2_Far.exe
А правильнее — посмотреть, как, например, задают позицию окна в исходном коде самого Far'а.

semiono 17-10-2010 02:44 1520501

Цитата:

Цитата Iska
У меня работает — что для GUI, что для CUI-версий. »

Не может быть.
Скампилируйте консольное скрипт-приложение, измените параметры реестра в исходнике au3
и запустите au3 скрипт, он запишет координаты не соответствующие кампиляции.
Затем запустите CUI.exe, консоль откроется в настройках скрипта au3, и лишь второй раз
откроется "со своими" настройками.

Цитата:

Цитата Iska
Почему Вы не пишете для «far.exe» в раздел »

Насколько я понимаю у Far.exe нету своего окна. Или я ошибаюсь?
Far.exe использует буфер и координаты окна cmd.exe как все консольные программы.

HKEY_CURRENT_USER\Console - настройки cmd.exe храняться здесь. Или ещё где?
Ну ещё и дублируется в HKEY_USERS\.DEFAULT\Console, и в профили
HKEY_USERS\S-1-5-21-73586283-1482476501-682003330-500\Console
Но это наверное не важно.


Время: 03:30.

Время: 03:30.
© OSzone.net 2001-