View previous topic :: View next topic |
Author |
Message |
_D_V_S_
Joined: 31 Jan 2009 Posts: 35
|
(Separately) Posted: Thu Apr 11, 2013 01:30 Post subject: |
|
|
А после выполнения скрипта раскладка возвращается на прежнее место?
То есть: если до выполнения скрипта была русская например.
Выбираем ВордПад (смену на английскую) - и после закрытия вордпада она снова становится обратно русской?
Просто работает этот скрипт только с блокнотом и вордпадом.
А с теми программами, которые мне нужны - не хочет((
Одна русская раскладка в обоих.
Сижу голову ломаю - почему...
Да, моя прога запускается через "родительский", что-ли, экзешник (и он выводит консоль кстати): сначала он запускается, и после запускает второй - главный (этот - чистый Гуй...).
Да и вообще запускаться стал после того, как я закомментил:
Code: | Do : A = WSH.AppActivate(PID) : Loop Until A : WScript.Sleep 40 |
Вообще - тёмный лес...
|
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Thu Apr 11, 2013 08:47 Post subject: |
|
|
_D_V_S_ wrote: | А с теми программами, которые мне нужны - не хочет(( | Названия прог в студию.
_D_V_S_ wrote: | Да и вообще запускаться стал после того, как я закомментил: | Без этой стоки не будет ожидания появления окна, соответственно, клавиши нажмутся раньше времени, и язык ввода останется исходным.
Что покажет, если написать в этом месте WScript.Sleep 100 : MsgBox PID ? _________________ Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой. |
|
Back to top |
|
|
_D_V_S_
Joined: 31 Jan 2009 Posts: 35
|
(Separately) Posted: Thu Apr 11, 2013 09:18 Post subject: |
|
|
Flasher wrote: | Названия прог в студию. |
xvm-stat.exe - родительская консольная
WorldOfTanks.exe - главная
Flasher wrote: |
Что покажет, если написать в этом месте WScript.Sleep 100 : MsgBox PID ? |
Тоже самое.
Flasher wrote: |
Без этой стоки не будет ожидания появления окна, соответственно, клавиши нажмутся раньше времени, и язык ввода останется исходным.
|
Вот это вообще для меня - загадка.
Почему так? Скрипт меняет язык только для той программы, которая в нём прописана?
А нельзя сменять язык раскладки для всей системы без ожидания окна программы? То есть сменить для всех окошек?
Как если просто в системе нажать Контрол+Шифт? |
|
Back to top |
|
|
MVV
Joined: 15 Oct 2009 Posts: 4811 Location: Ростов-Дон
|
(Separately) Posted: Thu Apr 11, 2013 09:37 Post subject: |
|
|
_D_V_S_,
Язык ввода по нажатию комбинации изменяется только для окна, имеющего фокус ввода. Если активен вордпад, изменится только для него, блокнот - только для блокнота, калькулятор - только для калькулятора. Не бывает такого, чтобы активного окна не было, винда вся на окнах, рабочий стол и панель задач - тоже окна, поэтому фраза "просто в системе нажать" некорректна в корне. _________________ TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel… |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Thu Apr 11, 2013 10:15 Post subject: |
|
|
_D_V_S_ wrote: | xvm-stat.exe - родительская консольная
WorldOfTanks.exe - главная | Мда.. Люди, о которых шла речь, - геймеры? Это они-то exe-шников боятся?
К сожалению, метод AppActivate не возвращает True c консольных окон.
Тут придётся пользоваться банальной задержкой.
А вот с танками я экспериментировать не имею желания. Полагаю, что поле ввода в его окне появляется ой как не сразу. Отсюда и проблемы. Вычислить, когда оно появится, с помощью стандартных методов не представляется возможным. Расчёт же данного скрипта идёт на окна, где фокус ввода возникает сразу или почти сразу при запуске окна приложения. _________________ Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой. |
|
Back to top |
|
|
_D_V_S_
Joined: 31 Jan 2009 Posts: 35
|
(Separately) Posted: Thu Apr 11, 2013 12:09 Post subject: |
|
|
Flasher wrote: | Мда.. Люди, о которых шла речь, - геймеры? Это они-то exe-шников боятся?
|
Боятся пуще остальных
Ибо вкладывают постоянно реальные деньги в игру, и трясутся кражи аккаунтов. В каждом экзешнике видят по меньшей мере трояна )))
Добавлено спустя 2 минуты:
Ну что-ж, если нет желания - то ничего не попишешь...
Всё равно огромное спасибо за уделённое мне время! |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Thu Apr 11, 2013 13:23 Post subject: |
|
|
_D_V_S_ wrote: | если нет желания - то ничего не попишешь | Установкой абы каких игр не балуюсь. В мои личные интересы (да и не только мои) подобные операции не входят по ряду "религиозных" причин. Мотивация хоть какая-то должна быть.
WSH для таких нужд не годится. Рекомендую пользоваться средствами для этого более подходящими (AHK, AutoIt), дать на них ссылки с офф. сайта людям, чтобы не пужались и почитали, что в этих exe-шниках нет ничего страшного. Задача на форумах с обсуждением этих языков решится куда быстрее. Мутить воду в ступе с чужой паранойей - недальновидное занятие. Не та это жертва, чтобы возыметь описанные удобства. _________________ Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой. |
|
Back to top |
|
|
DrShark
Joined: 21 Oct 2006 Posts: 911 Location: Kyiv, Ukraine
|
(Separately) Posted: Sun Apr 30, 2017 18:01 Post subject: |
|
|
У меня просьба помочь с адаптацией скрипта под следующую задачу.
Нужна принудительная установка английской раскладки в командной строке TC, для дальнейшей вставки команд (напр. CD) с помощью SendKeys.
Попробовал приспособить скрипт для этой цели, сократив нижнюю часть скрипта (после Select Case Language ... End Select) так:
Code: | ' Установка фокуса на TC cmdline:
WSH.SendKeys "{Right}{Home}"
' Вычисляем требуемое кол-во нажатий хоткея переключения раскладки:
' If RUS = 1 Then Count = 0 Else Count = Lang - 1
If ENG = 1 Then Count = 0 Else Count = Lang - 1
' Нажимаем хоткей смены языка нужное число раз:
If Count Then : For n = 1 To Count : WSH.SendKeys HK : Next : End If
' Выгружаем скрипт:
Set Dict = Nothing : Set WSH = Nothing : WScript.Quit |
Но в таком виде скрипт не меняет раскладку, т.к. похоже не получает текущую раскладку окна TC. _________________ "the light is coming to give back everything the darkness stole"
—©@AG4
Last edited by DrShark on Sun Apr 30, 2017 22:46; edited 1 time in total |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Sun Apr 30, 2017 19:40 Post subject: |
|
|
DrShark wrote: | Нужна принудительная установка английской раскладки в командной строке TC | При обновлённой версии vbscript.dll (поставляемой с IE 11) она вроде бы всегда английская.
DrShark wrote: | для дальнейшей вставки команд (напр. CD) с помощью SendKeys. | Зачем? Чем cd из кнопки/юзеркоманды не устраивает? _________________ Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой. |
|
Back to top |
|
|
DrShark
Joined: 21 Oct 2006 Posts: 911 Location: Kyiv, Ukraine
|
(Separately) Posted: Sun Apr 30, 2017 22:40 Post subject: |
|
|
Flasher wrote: | DrShark wrote: | для дальнейшей вставки команд (напр. CD) с помощью SendKeys. | Зачем? Чем cd из кнопки/юзеркоманды не устраивает? | У каждого метода есть свои преимущества и недостактки, в том числе и у командой строки, которая активируется по клавише "Стрелка вправо" и имеет разные виды автодополнения. Кнопка вызова скрипта внизу вертикалной панели кнопок, который вставляет команду CD с последующим пробелом в начало ком. строки, для меня сделает этот инстумент комфортнее и эффективнее в использовании.
Flasher wrote: | При обновлённой версии vbscript.dll (поставляемой с IE 11) она вроде бы всегда английская. | У меня Vista с IE 9, и вообще хотелось бы иметь максимально универсальное и совместимое решение. _________________ "the light is coming to give back everything the darkness stole"
—©@AG4 |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Sun Apr 30, 2017 23:49 Post subject: |
|
|
DrShark wrote: | которая активируется по клавише "Стрелка вправо" | Это только в режимах "Подробный" и "Комментарии", иначе по Shift + Влево/Вправо, если включён режим быстрого поиска без модификаторов, отключающий активацию комстроки при наборе текста. Поэтому универсальностью тут не пахнет.
DrShark wrote: | для меня сделает этот инстумент комфортнее и эффективнее в использовании. | В каком отношении? Набирать путь можно сразу в строке заголовка панели (2912/$B60/cm_EditPath), переходить к нужному объекту проще из меню избранных каталогов.
Если подразумевается Alt+F8, то мне не видится этот способ навигации более удобным.
Что касается более грамотного способа вставки, то советую сюда обратиться. _________________ Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой. |
|
Back to top |
|
|
DrShark
Joined: 21 Oct 2006 Posts: 911 Location: Kyiv, Ukraine
|
(Separately) Posted: Sun Apr 30, 2017 23:57 Post subject: |
|
|
2Flasher
Я попросил помочь с адаптацией скрипта, а вы навязываете дискуссию об удобстве тех или иных инструментов TC. У каждого здесь личные предпочтения. Если нет желания адаптировать скрипт, напишите прямо, и на том спасибо. _________________ "the light is coming to give back everything the darkness stole"
—©@AG4 |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Mon May 01, 2017 00:33 Post subject: |
|
|
DrShark
А VBScript в данном случае - это не инструмент ТС? Я всегда предлагаю тот инструмент, который с позиции моего опыта лучше для этого подходит. Если так сильно брезгуете 20 Кб-ой утилитой, то так и напишите.
А чтобы мне адаптировать данный скрипт (без подключения стороннего компонента) под все потенциальные системы, мне придётся проверить кучу комбинаций из версии ОС, библиотеки и интерпретатора, на что у меня сейчас нет ни ресурсов ни времени. _________________ Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой. |
|
Back to top |
|
|
DrShark
Joined: 21 Oct 2006 Posts: 911 Location: Kyiv, Ukraine
|
(Separately) Posted: Mon May 01, 2017 01:15 Post subject: |
|
|
Flasher wrote: | А VBScript в данном случае - это не инструмент ТС? | Важно то, что это встроенный инструмент Windows.
Flasher wrote: | адаптировать данный скрипт ... у меня сейчас нет ни ресурсов ни времени. | OK. Если кратко, почему не работает моя адаптация кода? Чего не хватает? Дальше я сам. _________________ "the light is coming to give back everything the darkness stole"
—©@AG4 |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Mon May 01, 2017 01:35 Post subject: |
|
|
DrShark wrote: | Важно то, что это встроенный инструмент Windows. | Не понимаю, что это меняет? ТС вообще пустой? Без плагинов, утилит и т.п.?
DrShark wrote: | OK. Если кратко, почему не работает моя адаптация кода? | Так ответ уже есть: DrShark wrote: | похоже не получает текущую раскладку окна TC | Именно так и есть. А тут разбирался вариант смены языка ввода при первом обращении к окну приложения.
Название скрипта: "Запуск редакторов с переключением языка ввода на нужный". _________________ Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой. |
|
Back to top |
|
|
|