Собственно тема такая, собрался я допилить движок PascalScript (нужен будет для одного фри проекта)
Позаимствовал на гит-хабе форматёр DelForEx (кто им пользовался тот в курсе). Портанул его в KOL.
Да видимо не совсем удачно (а может и вовсе не удачно, давно не кнопил мог затупить)
Вообщем в D4 dll собирается успешно и работает с подключенной статикой в проекте (вшить её проблем не составит)
но хотелось бы не вшивать коли исходник есть, но получаю крэш при вызове методов
//Formatter_SetTextStr(PChar(s)); // тоже работает
Formatter_LoadFromList(lst,@fSettings,SizeOF(TSettings));
Могу наверно только рассчитывать на помощь NetSpirit(a), и flint2(a)
так как тема серьёзная убедительная просьба для Tad(a) со своим "А мне не надо" не лездь
вот исходники с гитхаба, мой порт и рабочий вариант(del-ссылка ниже)
dll пока собирается только в d4, можно прямо в среде HiAsm
буду благодарен за любую помощь
Редактировалось 2 раз(а), последний 2020-09-15 16:44:42
Этот топик читают: Гость
Ответов: 5227
Рейтинг: 587
|
|||
карма: 4 |
|
Ответов: 2059
Рейтинг: 132
|
|||
Привет Андрей!
Я ещё код не смотрел, голова сильно болит (не от возлияний). У меня часто возникали проблемы с готовыми Dll и не только, когда в\из dll передавались в качестве параметра, или результата структуры, которых нет в КОЛ. Я выходил из ситуации следующим образом: https://yadi.sk/d/NoLHcM1BtbG_5w - это родные d4, а не коловские. В ..\HiAsm\compiler\Delphi\ В подавляющем большинстве этого достаточно! То есть в uses Kol,Share,CLASSES,Debug; пишем CLASSES, SYSUTILS, ... Вообще это сильно облегчает жизнь. Я бы кидал вместе с компонентами DLLLoader и эти библиотеки. Редактировалось 3 раз(а), последний 2020-09-12 11:31:14 |
|||
карма: 6 |
|
Ответов: 1926
Рейтинг: 172
|
|||
Интересная вещь, что-то сходное с деобфускацией.
Не понял только, где же крэш: у меня прога запустилась и отработала норм при нажатии кнопки. |
|||
карма: 9 |
|
Ответов: 16884
Рейтинг: 1239
|
|||
andrestudio писал(а): так как тема серьёзная убедительная просьба для Tad(a) со своим "А мне не надо" не лездь |
|||
карма: 25 |
|
Ответов: 5227
Рейтинг: 587
|
|||
flint2, спасибо конечно но нужно для FPC (простая среда для учебного класса)
Портировал для этого черепашью графику https://forum.hiasm.com/getfile/39129 3042 писал(а): Не понял только, где же крэшandrestudio писал(а): Вообщем в D4 dll собирается успешно и работает с подключенной статикой в проекте Нужна сборка без dll, подозреваю что память не выделяется где это крайне необходимо. Нужно в IC закоментировать вызов статики, подключить модуль DelforEngine.pas закоментировать в нём stdcall в описании функций как то так... Редактировалось 2 раз(а), последний 2020-09-13 08:25:10 |
|||
карма: 4 |
|
Ответов: 2059
Рейтинг: 132
|
|||
andrestudio, В Кейптаунском порту С пробоиной в борту "Жанетта" поправляла такелаж. Но прежде чем уйти В далекие пути,... Не серчай однако - капитана! Просто, у меня, и это прошло: в HiAsm инструмент хотел сделать..., в игрушки подался..., но всё-таки 3 завершённых проекта ( в разных амплуа). И это прошло! (Но удовольствие получил!) Всё с многоточием, но от работы надо получать удовольствие. Иначе какого хрена? Я в писатели пойду, пусть меня научат! Я к тому, что надо постоянно чему-то учится, тогда будет интересно! Или ты спец - пиз-дец в одной области и это твоя не только работа,... А бывает, что твоя работа и на хрен ни кому не нужна - потому что всё изменилось. А бывает и наоборот, ... Ох как бывает! P.S. Вообще-то, любой язык предназначен для общения - это его функция. "Счастье — это когда тебя понимают." На каких площадках сейчас можно поговорить на паскале? Последние из могикан что-ли? В своё время был такой Esperanto, и я пытался на нём лямать, и где его сыскать? Теперь по англически ботают - и это пройдёт! С якоря сниматься, По местам стоять! С уважением, капитан Flint2. Редактировалось 14 раз(а), последний 2020-09-14 13:52:35 |
|||
карма: 6 |
|
Ответов: 4629
Рейтинг: 749
|
|||
Падает на PList(FileText).Add(PrevLine) в TDelforParser.Add().
Нечего приводить FileText: TOCollection к PList, когда TOCollection не является наследником PList. И тем более является class, тогда как PList = object. |
|||
карма: 26 |
|
Ответов: 5227
Рейтинг: 587
|
|||
flint2,
Netspirit, спасибо. Перетащил родной класс TList всё работает. |
|||
карма: 4 |
|
Ответов: 4629
Рейтинг: 749
|
|||
А что, KOL.TList не хватало?
|
|||
карма: 26 |
|
Ответов: 2059
Рейтинг: 132
|
|||
Netspirit писал(а): А что, KOL.TList не хватало?Я не изучал, но не всегда песок хорошая замена овсу. © О. Генри Даже не из за того, что всю "логику" надо перелопатить. andrestudio, спасибо, что понял! Ведь улыбка это флаг корабля! Я просто хотел сказать, что больше и больше отдаляюсь от шаманства портации в КОЛ и вообще от паскаля. Мне вообще кажется, что создалась какая то микро-экологическая ниша, изолированная от внешнего мира и всякое вмешательство из вне несёт диссонанс. И нельзя требовать Хромов и т.д. Но есть-же пещеры, в которых идёт отдельная жизнь. Когда атомною бомбою всех сотрёт с лица Земли, то там ничего не изменится! И, кстати, все счастливы там! Редактировалось 1 раз(а), последний 2020-09-15 16:30:52 |
|||
карма: 6 |
|
Ответов: 5227
Рейтинг: 587
|
|||
Netspirit писал(а): А что, KOL.TList не хватало?Времени просто нет вообще для экспериментов(даже в компонент завернуть) А так можно и плагин сделать к среде HiAsm вот заготовка delphi & FPC делайте на здоровье https://forum.hiasm.com/getfile/39133 |
|||
карма: 4 |
|
Ответов: 2059
Рейтинг: 132
|
|||
andrestudio писал(а): Времени просто нет вообще для экспериментов(даже в компонент завернуть)В том то и дело! Если есть исходники, а не к dll готовой обращаться, то 99% всё заменяется. Только геморрой со временем. Тут как не крути, тупая и не интересная работа. На сколько тебе это интересно!? Другое дело, сделать автомат заменяющий всё под КОЛ, как я делал для DLLloader и С++2PAS - для меня было бы интересней, чем строки ровнять. Кто пишет - тот автоматом отступы делает. Кстати, у меня есть внятный парсер диалектов паскаля. Netspirit не просто начал делать... Но более 50% наработанного отрубается, может меньше, а кто делал - того уж нет и те далече. А чего смущает вписать CLASSES.PAS, SYSUTILS.PAS? В FPC они другие? Могу дать посмотреть исходники, где по $IF Def\Defined(...)} под все диалекты собирается! Я уже более десятка два нарисовал таких компонентов и уже на них собаку съел (если повар нам не врёт). В чём проблема? Нету в SVN? - да там много чего нету! Почему надо подстраиваться под КОЛ ебу-чей? Редактировалось 2 раз(а), последний 2020-09-15 17:45:32 |
|||
карма: 6 |
|
Ответов: 4629
Рейтинг: 749
|
|||
flint2 писал(а): А чего смущает вписать CLASSES.PAS, SYSUTILS.PAS? В FPC они другие? |
|||
карма: 26 |
|
Ответов: 2059
Рейтинг: 132
|
|||
flint2 писал(а): https://yadi.sk/d/NoLHcM1BtbG_5w - это родные d4, а не коловские. В ..\HiAsm\compiler\Delphi\Зачем таскать за каждым компонентом? Закинул "В ..\HiAsm\compiler\Delphi\" один раз, да и дело с концом! Да, будут глупые вопросы, что ругается компилятор, что того нет, да того нет, дай ..., дай ложку. Это всё можно оформить каким-то образом. Допустим, отдельная тема, куда ссылаться и свой "SVN" в заглавии. Главное, что всё старое работает! Всё зависит от адекватности пишущего. Будут крендели, кто будет пытаться скачанные исходники в IC вставлять. Их нету в официальных компиляторах - что, таскать с каждым компонентом? Ты пробовал? - Мне нравится! Это даже более высшего порядка заморочки, чем кубики собирать. Зато прямая пойдёт в гору, как в начале, и народ потянется! Я не брошу(плечо подставить, если ума хватит) - Потому-что ты хороший! Редактировалось 12 раз(а), последний 2020-09-15 19:32:52 |
|||
карма: 6 |
|
Ответов: 5227
Рейтинг: 587
|
|||
flint2, тут просто с FPC много завязано. Легальность нужна, отсюда все и заморочки.
Мне допустим нужен полный аналог функции Format для FPC У кого есть |
|||
карма: 4 |
|