SM2BT 0.5 beta 4
Select messages from
# through # FAQ
[/[Print]\]
Goto page Previous  1, 2, 3, 4, 5, 6, 7, 8, 9, 10  Next  :| |:
Total Commander -> Плагины Total Commander

#91:  Author: Bishop PostPosted: Fri Aug 31, 2007 13:18
    —
GeNtlE,
в Vista x86 сразу после перехвата, показав всплывающее окошко, падает
Quote:
Сигнатура проблемы:
Имя события проблемы: BEX
Имя приложения: SM2BT.exe
Версия приложения: 0.0.0.0
Штамп времени приложения: 2a425e19
Имя модуля с ошибкой: user32.dll
Версия модуля с ошибкой: 6.0.6000.16438
Штамп времени модуля с ошибкой: 45d3dc0e
Смещение исключения: 00067715
Код исключения: c0000409
Данные исключения: 00000000
Версия ОС: 6.0.6000.2.0.0.256.1
Код языка: 1049

#92:  Author: Sam DarkLocation: Voronezh, Russia PostPosted: Tue Sep 04, 2007 13:36
    —
Замечена бага:
Запускается куча sm2bt. При этом она говорит, что программа уже запущена, но не закрывается.

#93:  Author: GeNtlELocation: Россия, Чита PostPosted: Tue Sep 04, 2007 19:38
    —
Bishop
Буду смотреть. Примечательно, что ранние, неопубликованные версии под вистой работали без проблем. Ошибка в плагине Popup.dll.
Sam Dark
Пустые окна исправлю. Кучу экземпляров тоже исправлю. Про конфиги буду думать. Но почему это будет удобнее, понять не могу. Да и как потом конфигурировать гуишным конфигуратором?

#94:  Author: Sam DarkLocation: Voronezh, Russia PostPosted: Wed Sep 05, 2007 13:37
    —
GeNtlE
Если будет конфигуратор - будет всё равно, как организован конфиг. А так - см. конфиг Total Commander.

#95:  Author: GeNtlELocation: Россия, Чита PostPosted: Wed Sep 05, 2007 17:06
    —
Sam Dark wrote:
GeNtlE
Если будет конфигуратор - будет всё равно, как организован конфиг. А так - см. конфиг Total Commander.
Ага. Это наталкивает меня на мысли о том, как организована админка в phpBB. Думаю, будет что-то похожее.

#96:  Author: Sam DarkLocation: Voronezh, Russia PostPosted: Wed Sep 05, 2007 20:24
    —
Модульный конфигуратор хочешь построить как в миранде?

#97:  Author: GeNtlELocation: Россия, Чита PostPosted: Wed Sep 05, 2007 22:06
    —
Этого изначально и добивался (модульности). Модульность программы, вроде, удалась. Немного до ума довести осталось. О модульном конфигураторе я даже не думал. Теперь как-то всё начинает приобретать законченный вид. Smile

#98:  Author: DrSharkLocation: Kyiv, Ukraine PostPosted: Sat Nov 03, 2007 20:31
    —
Программка сложновата в освоении.
Собственно, сейчас разбираюсь с ини-файлом и выполнением макросов.
Мне кажется, было бы неплохо добавить возможность запуска внешней проги/ассоциированного файла(скрипта) при обнаружении sm2bt окна с критериями из ini-файла.
То есть для меня идеал:
sm2bt обнаруживает окно и запускает мой скрипт обработки для этого окна.

#99:  Author: GeNtlELocation: Россия, Чита PostPosted: Sun Nov 04, 2007 19:15
    —
DrShark
Надо для этого написать плагин, который будет запускать ассоциированную программу (файл, скрипт).
Кстати, а возможностей SendKeys(); не хватает для обработки?

Всё руки не доходят открыть спецификацию плагинов.

Есть желающие заняться их написанием? Если есть - стучитесь в личку, аську. Попробуем что-нибудь решить. SDK в природе не существует пока.

#100:  Author: DrSharkLocation: Kyiv, Ukraine PostPosted: Sun Nov 04, 2007 19:50
    —
Можно пример использования SendKeys?
Вот я Шутером получил строку вида:
Code:
||#somenumber|Title_of_Window|N||3|0D

Куда мне теперь это записать, чтобы послать ему комбинацию Alt+F4?
И что надо поставить, чтобы sm2bt посылал эту команду окну, даже если окно неактивно?
Quote:
Кстати, а возможностей SendKeys(); не хватает для обработки?

а) мне удобнее будет сделать, например, один скрипт для закрытия окна по Alt+F4, и потом прописывать это в ini sm2bt как-то так:
Code:
||#somenumber|Title_of_Window|N||3|0D|MyScript.au3

К тому же я могу вызвать этот скрипт из других скриптов/программ.
б) обработка сложных действий. Чем искать шутером или чем-то другим классы контролов и окон, мне легче выполнить действия мышкой и клавиатурой и макро-рекордером записать это в скрипт.

Я не против плагинов. Одно другому не мешает.
Просто sm2bt хорошо подходит для отлавливания окон, а для действий над ними мне легче использовать другие инструменты.

#101:  Author: GeNtlELocation: Россия, Чита PostPosted: Sun Nov 04, 2007 21:02
    —
Это будет строка вида:
Code:
||#somenumber|Title_of_Window|N||Popup+Log|SendKeys(%({F4}));

где класс/заголовок окна попущены (зачем?)
класс дочернего окна "#somenumber"
текст дочернего окна "Title_of_Window"
иконка - нет
вывод будет производиться во всплывающее окно и писаться в лог (которого нет)
этому окну будет производиться отправка клавиатурного сочетания Alt+F4.

Записать эту строку в ShowWindow.ini, если текст дочернего окна отловился Shooter'ом. Иначе, в DrawText.ini

Quote:
что надо поставить, чтобы sm2bt посылал эту команду окну, даже если окно неактивно?
Этот функционал есть только в версии 0.2.2. Она, кстати, ни чем не хуже версии 0.5 (есть лог, работает выключение), но там нет обработки "рисованных" окон сообщений. Чтобы это заработало в 0.5, нужен плаг. А для его написания нужно время. Или доброволец. Smile

Quote:
мне удобнее будет сделать, например, один скрипт для закрытия окна по Alt+F4
Я думал об этом, но мне это показалось сомнительным удобством. Посмотрим, что можно сделать.

Quote:
для действий над ними мне легче использовать другие инструменты.
Здесь два пути - написать кучу плагинов (или один?), которые будут выполнять нужные действия или написать плагин-переходник к какому-нибудь монстру, который всё умеет делать.

#102:  Author: DrSharkLocation: Kyiv, Ukraine PostPosted: Sun Nov 04, 2007 21:16
    —
Quote:
где класс/заголовок окна попущены (зачем?)

Не зачем, а я шутеру сразу указал искать дочернее окно.
Потому, что это дочернее окно проги.
Я ещё не совсем понял, как пользоватся sm2bt, обязательно ли прописывать в этом случае класс/заголовок основного окна.
Quote:
Здесь два пути - написать кучу плагинов (или один?), которые будут выполнять нужные действия или написать плагин-переходник к какому-нибудь монстру, который всё умеет делать.

Как ты себе это представляешь?
Дело в том, что ты уже разделил sm2bt на модули.
Мне кажется, что лучше к секуции Main добавить секцию, в которой указывались бы сторонние проги. Формат такой:
Code:
[Section]
ShowWindow.ini=1,2,3,4|script.au3,script.au3,script.au3,script2.au3

Здесь для правил 1, 2 и 3 из ShowWindow.ini запускается скрипт script.au3, а для правила №4 - script2.au3.
Под правилами я имею ввиду характеристики окон.
Я пока не знаю, как сделать компактнее.

Почему я так упорно защищаю эту идею?
1) как минимум для меня это проще;
2) я не буду зависить от разработчиков плагинов.

Edit:
Quote:
Этот функционал есть только в версии 0.2.2.
У меня есть 0.2.2. Можешь привести пример для неё?

#103:  Author: GeNtlELocation: Россия, Чита PostPosted: Sun Nov 04, 2007 21:53
    —
DrShark wrote:
Не зачем, а я шутеру сразу указал искать дочернее окно.
Потому, что это дочернее окно проги.
Подозреваю, что вовсе там нет дочернего окна.
И так, по порядку, как написано в ридми:
1. Ищем характеристики окна нулевого уровня (то, которое на рабочем столе лежит, имеет заголовок, кнопки закрытия и все рюшечки). В группе "Окно" нажимаем на кнопку "..." и щёлкаем по заголовку желаемого окна.
2. Ищем характеристики дочернего окна. Аналогично, только щёлкаем уже по его тексту.
И здесь есть нюанс. Если это VCL-окно (прога написана на BCB, Delphi), то надписи на нём выводятся не в дочерних окнах Static (в основном), а при помощи функции DrawText(). Если после щелчка по дочернему окну мы получили строку ";В указанном окне не найдено дочернего окна с подходящими атрибутами.", то это наш клиент. Значит настройки вписывать надо не в ShowWindow.ini, а в DrawText.ini. Соответственно, там нет характеристики "класс дочернего окна", а есть только фрагмент текста в окне, на который необходимо реагировать. См. примеры в дистрибутиве.
3. Далее в получившейся строке оставляем место под макрос замены, ставим, куда её выводить (Popup) и что с окном делать.

Quote:
Как ты себе это представляешь?
Дело в том, что ты уже разделил sm2bt на модули.
Мне кажется, что лучше в секуцию Main добавить секцию, в которой указывались бы сторонние проги. Формат такой:
Code:
[Section]
ShowWindow.ini=1,2,3,4|script.au3,script.au3,script.au3,script2.au3

Здесь для правил 1, 2 и 3 из ShowWindow.ini запускается скрипт script.au3, а для правила №4 - script2.au3.
Под правилами я имею ввиду характеристики окон.
Я пока не знаю, как сделать компактнее.
Была раньше нумерация правил. Сильно всем не нравилась и была неудобной. И с компактностью проблема. У меня была идея использовать какие-то операторные скобки, условия. Но я не хочу превращать SM2BT в PowerPro. И так уже всё сложно и непонятно. И с PowerPro разобраться находят в себе силы не многие.

Quote:
Почему я так упорно защищаю эту идею?
1) как минимум для меня это проще;
2) я не буду зависить от разработчиков плагинов.

Надо долго думать и упорно писать. Мне писать. А у меня сейчас диплом. Я, конечно, могу подумать, но в скором времени ничего не обещаю. Поэтому, сейчас больше надежды на разработчиков плагинов. Smile
Quote:
У меня есть 0.2.2. Можешь привести пример для неё?
Что там приводить? В версии 0.2.2 именно такая строка должна быть записана в SMB-файл, которую сгенерит Shooter. А подробности работы с ним описаны здесь, в ридми и где-то выше в этой теме. Если ничего не получится, скажи, какое окно ты пытаешься отловить (и что за программа).

#104:  Author: DrSharkLocation: Kyiv, Ukraine PostPosted: Sun Nov 04, 2007 22:04
    —
Пробовал поправленные строки и в 0.5, и в 0.2.
В 0.5 выдаёт тултип с Error level 6, 0.2 просто молчит. Не ловит окно.
Строки щас в тебе в ЛС отправлю.
Quote:
Надо долго думать и упорно писать. Мне писать. А у меня сейчас диплом. Я, конечно, могу подумать, но в скором времени ничего не обещаю. Поэтому, сейчас больше надежды на разработчиков плагинов.

Я же наоборот хочу как проще...
Не надо превращать sm2bt в PowerPro. Надо дать возможность использовать то, что уже есть, другим программам. Это как бы альтернатива плагинам.

#105:  Author: GeNtlELocation: Россия, Чита PostPosted: Sun Nov 04, 2007 22:38
    —
Quote:
Надо дать возможность использовать то, что уже есть, другим программам. Это как бы альтернатива плагинам.
Я не против. И даже считаю, что это хорошо. Просто это можно реализовать, используя текущий плагиновый интерфейс.



Total Commander -> Плагины Total Commander


output generated using printer-friendly topic mod. All times are GMT + 4 Hours

Goto page Previous  1, 2, 3, 4, 5, 6, 7, 8, 9, 10  Next  :| |:
Page 7 of 10

Powered by phpBB © 2001, 2005 phpBB Group