(..ограничение по длине сообщения...)
Продолжение:
Цитата:
[*] изменена функция OnCallMethod в плагинах. ее объявление:
TOnCallMethod = function(const ConnectId, ScriptId: integer; const MethodName: String; var Params,
FuncResult: Variant): Boolean; stdcall;
в функцию были добавлены ConnectId, ScriptId
где ConnectId это айди соединения получаемого с учетом UseForConnectName и UseForConnectID
а ScriptId это уникальный идентификатор "скрипта" вызвавшего OnCallMethod
таким образом OnCallMethod может идентифицировать с большой вероятностью (при использовании UseForConnectName и UseForConnectID в самом скрипте)
идентификатор соединения связанного с "экземпляром скриптового движка" вызвавшим метод либо использовать для этих целей ScriptId.
для чего это нужно: если плагин расширяющий функции скриптового движка используется в нескольких скриптах то достаточно часто (все зависит от "направления" функций реализуемых) требуется идентифицировать соединение для которого будет выполняться "расширение" либо "экземпляр скрипта"
[+] Следующие функции добавлены в структуру плагинов
Function SerScriptVariable(scriptid:integer; varname:string; varvalue:variant):boolean;
Function GetScriptVariable(scriptid:integer; varname:string):variant;
function IsScriptIdValid(scriptid:integer):boolean;
позволяют менять значение глобальных переменных скриптового движка в OnCallMethod плагинов.
[-] При редирректе соединения с помощью лсп в лог писался локальный порт вместо удаленного
[+] Соответствующая надпись для перенаправления соединения при использовании лсп в режиме "перехват соединения".
[*] Вернул инжект к старой схеме определения хендла главного окна.
[+] В скриптовый движок добавлены следующие процедуры:
procedure WriteMask(Mask:string; parameters : array of variant)
procedure ReadMask(Mask:string; var index:integer; var parameters : array of variant)
[+] в хелп добавлено их (и не только их) описание в разделе "Перечень поддерживаемых функций/процедур, переменные." (хелп так же был обновлен под текущую версию)
[*] Модифицирован обработчик рантайм ошибок в testInit и testFree (Вместо системной "операция завершена успешно" будет отображаться класс и сообщение конкретной ошибки)
обновленные сурсы фастскрипта перезалиты на фтп
__________________
L2Ext - project closed.
Последний раз редактировалось alexteam, 11.09.2009 в 16:51.
За это сообщение alexteam нажился 2 спасибками от:
Раньше это в версиях 83 и ниже которые позволяли себе по нескольку раз внедрять библиотеку в целевой процесс.
когда я взялся за перекройку то в первую очередь исключил все варианты повторного инжекта библиотеки в приложение (бсоды любите ?) именно с помошью внедрения ТОЛЬКО в новые запущенные процессы.
можно конечно пересмотреть этот момент и исключить повторный инжект с помощью мьютексов. (если ничего другого не останеться в связи с тем что в этой тестовой версии я ничего не накосячил - сделаю именно так)
кстати. инжект можно прилепить к линейке с помошью appinit (думаю поняли о чем я)
Добавлено через 4 минуты
на данный момент больше всего интересует юзабилити и работосопособность нововведений по скриптовому движку и плагинам.
__________________
L2Ext - project closed.
Последний раз редактировалось alexteam, 11.09.2009 в 20:53.
Причина: Добавлено сообщение
Инжект в уже запущенный процесс фишка крайне нужная.
По поводу диагностики всего остального не гони лошадей, дай народу спокойно потестить.
Еще нюанс, при первом запуске пакетхака, у меня окно с настройками спряталось за главным окном пакетхака.
Инжект в уже запущенный процесс фишка крайне нужная.
знач будет.
Цитата:
Еще нюанс, при первом запуске пакетхака, у меня окно с настройками спряталось за главным окном пакетхака.
есть такая штука
"[*] поубивал к чертям практически все стайонтопы."
к ней на свн приписка:
"надо будет написать какойто отдельный управляемый движек для управление zorder окон."
там вообще бардак с этим стайонтопом. ставишь стайонтоп для окна настроек оно становиться стайонтоп вообще, даже диалоги открытия и сохранения файлов перекрывает. а по идее ведь не маинформа и должно быть стайонтоп в рамках приложения...
хотя раньше было нормально. чертечто происходит -)
ну да, в принципе отключаеться автосохранение пакетов и дисейблиться вся панель инструментов..
убрал эту фичу ибо и правда глуповато получилось.
Добавлено через 59 минут
23.141 перезалит
Цитата:
[*] больше не отключается панель инструментов после отключения "обработки пакетов" в фрейме соединения.
[*] Инжект в приложение будет осуществляться независимо от порядка запуска ПХ и Целевого приложения, но не более чем один раз в процесс.
[*] Z-order теперь в порядке
[*] замечены неточности в дефолтном скрипте скриптового движка
[-] Исправлена опечатка в названии функции SetScriptVariable
[*] als by xkor обновлен до существующей ревизии. добавлены GetScriptVariable, SetScriptVariable, IsScriptIdValid, ReadQ, ReadQEx, WriteQ, WriteQEx. Поправлен GoFirstConnection и GoNextConnection
[+] Восстановлена логика WriteXEx ReadXEx
[*] В соответствии с этими изменениями поправлен хелп.
[+] als.dll плагин добавлен в архив билда.
Добавлено через 1 час 53 минуты
Цитата:
[*] в детальной расшифровке отключил перенос по словам (имхо так лучше);
это, при работе с хтмл... не лучше ( пока все выделишь чтоб скопировало - рехнешся.
сделал контекстное меню позволяющее его включить.
__________________
L2Ext - project closed.
Последний раз редактировалось alexteam, 12.09.2009 в 15:43.
Причина: Добавлено сообщение
За это сообщение alexteam нажился 3 спасибками от:
на 7й. компилируеться легко и на вышестоящих. главное чтобы либы были -)
Цитата:
Запускаем phx (галочка перехват не стоит), запускаем клиент, ставим галочку перехват, жмем сохранить. Ничего не происходит
ща проверю.. однозначно работает если пх стартует после клиента с уже включенным перехватом.
заодно еще один косяк ковыряясь с плагинами нашел... в подсказках скриптового движка.
Добавлено через 4 минуты
проверил, инжектит, после включения, как то много времени прошло но проинжектило.
Добавлено через 3 часа 6 минут
гады %)
хоть ктото из вас пытался скрипты запускать ?..
сомнительно, ибо сразу же был багрепорт что оно "НЕ работают".
если бы я не сел за ультрамегаплагин реализующий логику бота в плагине (учет обьектов, шмота, скилов, патчпоинты, хтмл рожа и прочую ахинею) с управлением из под скрипта (или наоборот) то черт его знает когда бы пофиксил.
поправил, перезалил под тем же билдом. выводы сделал.
__________________
L2Ext - project closed.
Последний раз редактировалось alexteam, 12.09.2009 в 20:32.
Причина: Добавлено сообщение
За это сообщение alexteam нажился 2 спасибками от: