Вернуться   CoderX :: Forums > Lineage II > L2PacketHack > Скриптинг
Войти через OpenID

Скриптинг Форум посвещенный созданию скриптов для L2PacketHack

Чат (Новых сообщений с момента вашего последнего визита нет)
Загрузка...
Задавайте ваши вопросы на форуме. Чат предназначен для небольших разговоров.
 
Ответ
 
Опции темы Опции просмотра
Старый 26.01.2009, 08:40   #21
Рыцарь
 
Аватар для QaK
 
Регистрация: 28.09.2007
Сообщений: 1,558
Сказал Спасибо: 71
Имеет 351 спасибок в 244 сообщенях
QaK пока неопределено
По умолчанию

Я компилил под 2006 (с хкор"овского фтпшника) для ПНХ 80/81.

Добавлено через 46 секунд
Кинь исходник или сюда или в личку стукни - спишемся.

Последний раз редактировалось QaK, 26.01.2009 в 08:40. Причина: Добавлено сообщение
QaK вне форума   Ответить с цитированием
Старый 26.01.2009, 09:10   #22
Пользователь
 
Регистрация: 22.04.2008
Сообщений: 51
Сказал Спасибо: 14
Имеет 36 спасибок в 11 сообщенях
alexsl пока неопределено
По умолчанию

кстати какие опции компиляции у тя стоят?
у муну в Д7:
Код:
-$A8
-$B-
-$C+
-$D+
-$E-
-$F-
-$G+
-$H+
-$I+
-$J-
-$K-
-$L+
-$M-
-$N+
-$O+
-$P+
-$Q-
-$R-
-$S-
-$T-
-$U-
-$V+
-$W-
-$X+
-$YD
-$Z1
-cg
-AWinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
-H+
-W+
-M
-$M16384,1048576
-K$00400000
-E"C:\Temp\L2PHX34159\plugins"
-LE"c:\program files\borland\delphi7\Projects\Bpl"
-LN"c:\program files\borland\delphi7\Projects\Bpl"
-w-UNSAFE_TYPE
-w-UNSAFE_CODE
-w-UNSAFE_CAST
alexsl вне форума   Ответить с цитированием
Старый 26.01.2009, 10:21   #23
Рыцарь
 
Аватар для Grinch
 
Регистрация: 29.02.2008
Сообщений: 928
Сказал Спасибо: 127
Имеет 130 спасибок в 93 сообщенях
Grinch пока неопределено
По умолчанию

Delphi 2007 c библиотеками которые нужны для компила пакетхака. на других обычно критует или длл или пакетхак. кароче хз в чем трабла а так работает и развивается потихоньку

Добавлено через 58 секунд
Зы брал у xkor'a c ftp

Последний раз редактировалось Grinch, 26.01.2009 в 10:21. Причина: Добавлено сообщение
Grinch вне форума   Ответить с цитированием
Старый 26.01.2009, 20:25   #24
Пользователь
 
Регистрация: 22.04.2008
Сообщений: 51
Сказал Спасибо: 14
Имеет 36 спасибок в 11 сообщенях
alexsl пока неопределено
По умолчанию

ИМХО в общем с менеджером памяти FastMM какая то замарочка,
он идет начиная с Д2007.
вот может поможет, лог:
Код:
--------------------------------2009/1/26 14:38:36--------------------------------
FastMM has detected an error during a FreeMem operation. The block header has been corrupted. 

The current thread ID is 0x7D4, and the stack trace (return addresses) leading to this error is:
C12993 [System][@FreeMem]
C64B39 [C:\Work\l2phx.3.4.1.81\Source\helper.dpr][helper][OnLoad][128]
55E338 [phxPlugins.pas][phxPlugins][phxPlugins.TPlugin.LoadPlugin][188]
572E99 [main.pas][main][main.TL2PacketHackMain.clbPluginsListClickCheck][3750]
46F9C7 [Controls.pas][Controls][Controls.TControl.DoMouseDown][5252]
46FA15 [Controls.pas][Controls][Controls.TControl.WMLButtonDown][5261]
4733E4 [Controls.pas][Controls][Controls.TWinControl.WndProc][7304]
44CB88 [StdCtrls.pas][StdCtrls][StdCtrls.TCustomListBox.WndProc][4790]
472B0B [Controls.pas][Controls][Controls.TWinControl.MainWndProc][7073]
42F91E [common\Classes.pas][Classes][Classes.StdWndProc][11583]
7E368734 [Unknown function at GetDC]

--------------------------------2009/1/26 14:39:05--------------------------------
This application has leaked memory. The small block leaks are (excluding expected leaks registered by pointer):

5 - 12 bytes: AnsiString x 1

Note: Memory leak detail is logged to a text file in the same folder as this application. To disable this memory leak check, undefine "EnableMemoryLeakReporting".
зы: поиграюсь с опциями FastMM, мб че получится

Добавлено через 4 часа 43 минуты
в общем разобрался,если юзать оригинальный файл FastMM4Options.inc и объявить дерективы ShareMM и AttemptToUseSharedMM в проекте то все работает норм. проверено Д7, думаю д2005 и 2006 норм должны компилится.
зы: юзал ФастММ 4.92 и 4.9

Последний раз редактировалось alexsl, 26.01.2009 в 20:35. Причина: Добавлено сообщение
alexsl вне форума   Ответить с цитированием
Старый 29.01.2009, 07:39   #25
Пользователь
 
Регистрация: 22.04.2008
Сообщений: 51
Сказал Спасибо: 14
Имеет 36 спасибок в 11 сообщенях
alexsl пока неопределено
По умолчанию

кусок дллки для Д7, чтоб компилился нормально
delphi Код:
library mylib; {$define ShareMM} {$define AttemptToUseSharedMM} {$define RELEASE} // для совместимости с релизом пакетхака, при дебуге можно закоментировать uses   FastMM4,   SysUtils,   Windows   .....

FastMM лежит тут http://fastmm.sourceforge.net
FastMM4Options.inc брал оригинальный

Последний раз редактировалось alexsl, 29.01.2009 в 07:42.
alexsl вне форума   Ответить с цитированием
За это сообщение alexsl нажился 2 спасибками от:
Старый 07.02.2009, 11:35   #26
Новичок
 
Регистрация: 06.02.2009
Сообщений: 13
Сказал Спасибо: 3
Имеет 15 спасибок в 6 сообщенях
AD! пока неопределено
По умолчанию

Начал попытки переписки скриптов в плагины, появились несколько вопросов
1.TReadDEx,TReadSEx и т.п при чтении не смещают index на количество прочтенных байт как в скрипте, так и должно быть?
2.как работает TDataPckToStrPck строка получается hex? или как?
и кто знает как отлаживать в в седьмой делфи, у меня никак не получилось(, аттачу ПХ и он отлаживать сразу начинает, даж плагин не включить!
p.s хорошо бы для образца каконибуть исходник плагина, или описание работы процедур и функций)
AD! вне форума   Ответить с цитированием
Старый 07.02.2009, 16:11   #27
Admin!
 
Аватар для xkor
 
Регистрация: 04.08.2007
Сообщений: 2,360
Сказал Спасибо: 113
Имеет 1,566 спасибок в 651 сообщенях
xkor на пути к лучшему
По умолчанию

Цитата:
Сообщение от AD! Посмотреть сообщение
1.TReadDEx,TReadSEx и т.п при чтении не смещают index на количество прочтенных байт как в скрипте, так и должно быть?
угу, поскольку в качестве параметра может быть не только переменная но и просто число в плагине нельзя реализовать это как в скрипте.

Цитата:
Сообщение от AD! Посмотреть сообщение
2.как работает TDataPckToStrPck строка получается hex? или как?
преобразует пакет из просто последовательности байт в памяти в строку, которая по сути та же последовательность байт, но с ней часто удобнее работать, hex тут не при чем...

Цитата:
Сообщение от AD! Посмотреть сообщение
и кто знает как отлаживать в в седьмой делфи, у меня никак не получилось(, аттачу ПХ и он отлаживать сразу начинает, даж плагин не включить!
ну после атача просто нажимаешь F9, в пакетхаке подключаешь плагин и вуаля - можно останавливать бряки в плагине.
Только надо чтобы дельфя плагин компилила сразу в папку плагинов пакетхака, иначе она не поймет что тот плагин который ты включил тот же самый что ты отлаживаеш..

Цитата:
Сообщение от AD! Посмотреть сообщение
p.s хорошо бы для образца каконибуть исходник плагина, или описание работы процедур и функций)
в SVN лежит два исходника плагинов - plugin_demo и plugin_demo2
__________________
Я здесь практически не появляюсь!, Skype - ikskor
xkor вне форума   Ответить с цитированием
За это сообщение xkor нажился спасибкой от:
Старый 11.02.2009, 09:57   #28
Новичок
 
Регистрация: 06.02.2009
Сообщений: 13
Сказал Спасибо: 3
Имеет 15 спасибок в 6 сообщенях
AD! пока неопределено
По умолчанию

Не мог разобраться с реализацией таймера плагине соорудил следующую конструкцию, вроде работает, но правильно ли? не будет затупов при долгой работе?
также прописываются и другие события)
delphi Код:
...... type   aaa = class(TObject)   public   procedure CheckTime(Sender: TObject);   procedure FormClose(Sender: TObject; var Action: TCloseAction);   end; var FormMain : TForm; CheckTimer: TTimer; Msg : TMemo; ........... ............. function Create_FormMain : TForm; ........... .......   Result := TForm.Create(nil);   TRY .......     Result.OnClose := aaa.Create.FormClose; ........ end; ........... ............ //чтобы форма не закрывалась procedure aaa.FormClose(Sender: TObject; var Action: TCloseAction); begin   Action:=caNone; end; //событие таймера procedure aaa.CheckTime(Sender: TObject); begin   msg.Lines.Add('test'); end; procedure OnLoad; stdcall; begin   FormMain:=Create_FormMain;   CheckTimer:=TTimer.Create(Application);   CheckTimer.OnTimer:=aaa.Create.CheckTime;   CheckTimer.interval:=2000; //время задержки   CheckTimer.enabled:=false; end; .........

а для чего в проекте используется FastMM4?
AD! вне форума   Ответить с цитированием
Старый 11.02.2009, 11:38   #29
Новичок
 
Регистрация: 14.11.2008
Сообщений: 12
Сказал Спасибо: 0
Имеет 0 спасибок в 0 сообщенях
xenus пока неопределено
По умолчанию

FastMM4 используеться для улутшения работы с памятью... восновном сказываеться на стабильность работы бинарника ;-)
xenus вне форума   Ответить с цитированием
Старый 11.02.2009, 14:42   #30
Admin!
 
Аватар для xkor
 
Регистрация: 04.08.2007
Сообщений: 2,360
Сказал Спасибо: 113
Имеет 1,566 спасибок в 651 сообщенях
xkor на пути к лучшему
По умолчанию

Цитата:
Сообщение от AD! Посмотреть сообщение
а для чего в проекте используется FastMM4?
для того чтобы плагины и программа юзали один менаджер памяти, иначе нельзя бы было передавать стринги между плагином и программой и другие динамические массивы...
__________________
Я здесь практически не появляюсь!, Skype - ikskor
xkor вне форума   Ответить с цитированием
Ответ

  CoderX :: Forums > Lineage II > L2PacketHack > Скриптинг



Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 23:42.

vBulletin style designed by MSC Team.
Powered by vBulletin® Version 3.6.11
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Locations of visitors to this page
Rambler's Top100

Вы хотите чувствовать себя в безопасности? чоп Белган обеспечит её!