Вверх ↑
Этот топик читают: Гость
Ответов: 4641
Рейтинг: 513
#1: 2020-09-12 06:54:28 ЛС | профиль | цитата
Собственно тема такая, собрался я допилить движок 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
карма: 6

0
vip
#1.1контекстная реклама от партнеров
Ответов: 1700
Рейтинг: 120
#2: 2020-09-12 11:07:58 ЛС | профиль | цитата
Привет Андрей!
Я ещё код не смотрел, голова сильно болит (не от возлияний).
У меня часто возникали проблемы с готовыми 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
карма: 5

0
Ответов: 1886
Рейтинг: 164
#3: 2020-09-12 15:24:52 ЛС | профиль | цитата
Интересная вещь, что-то сходное с деобфускацией.
Не понял только, где же крэш: у меня прога запустилась и отработала норм при нажатии кнопки.
карма: 7
0
Ответов: 16884
Рейтинг: 1237
#4: 2020-09-12 16:39:30 ЛС | профиль | цитата
andrestudio писал(а):
так как тема серьёзная убедительная просьба для Tad(a) со своим "А мне не надо" не лездь
Просто для интереса: А "не лездь" это что?
карма: 24
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Ответов: 4641
Рейтинг: 513
#5: 2020-09-13 08:24:18 ЛС | профиль | цитата
flint2, спасибо конечно но нужно для FPC (простая среда для учебного класса)
Портировал для этого черепашью графику https://forum.hiasm.com/getfile/39129
3042 писал(а):
Не понял только, где же крэш

andrestudio писал(а):
Вообщем в D4 dll собирается успешно и работает с подключенной статикой в проекте

Нужна сборка без dll, подозреваю что память не выделяется где это крайне необходимо.
Нужно в IC закоментировать вызов статики, подключить модуль DelforEngine.pas закоментировать в нём stdcall в описании функций
как то так...

Редактировалось 2 раз(а), последний 2020-09-13 08:25:10
карма: 6

0
Ответов: 1700
Рейтинг: 120
#6: 2020-09-13 15:25:05 ЛС | профиль | цитата

andrestudio,
В Кейптаунском порту
С пробоиной в борту
"Жанетта" поправляла такелаж.
Но прежде чем уйти
В далекие пути,...
Не серчай однако - капитана!
Просто, у меня, и это прошло: в HiAsm инструмент хотел сделать...,
в игрушки подался..., но всё-таки 3 завершённых проекта ( в разных амплуа).
И это прошло! (Но удовольствие получил!)
Всё с многоточием, но от работы надо получать удовольствие. Иначе какого хрена?
Я в писатели пойду,
пусть меня научат!
Я к тому, что надо постоянно чему-то учится, тогда будет интересно!
Или ты спец - пиз-дец в одной области и это твоя не только работа,...
А бывает, что твоя работа и на хрен ни кому не нужна - потому что всё изменилось.
А бывает и наоборот, ...
Ох как бывает!

P.S.
Вообще-то, любой язык предназначен для общения - это его функция. "Счастье — это когда тебя понимают."
На каких площадках сейчас можно поговорить на паскале?
Последние из могикан что-ли?
В своё время был такой Esperanto, и я пытался на нём лямать, и где его сыскать?
Теперь по англически ботают - и это пройдёт!
С якоря сниматься,
По местам стоять!

С уважением,
капитан Flint2.

Редактировалось 14 раз(а), последний 2020-09-14 13:52:35
карма: 5

0
Ответов: 4309
Рейтинг: 670
#7: 2020-09-14 13:36:29 ЛС | профиль | цитата
Падает на PList(FileText).Add(PrevLine) в TDelforParser.Add().
Нечего приводить FileText: TOCollection к PList, когда TOCollection не является наследником PList. И тем более является class, тогда как PList = object.
карма: 23

0
Ответов: 4641
Рейтинг: 513
#8: 2020-09-15 05:40:39 ЛС | профиль | цитата
flint2,
Netspirit, спасибо.
Перетащил родной класс TList всё работает.
карма: 6

0
Ответов: 4309
Рейтинг: 670
#9: 2020-09-15 10:49:02 ЛС | профиль | цитата
А что, KOL.TList не хватало?
карма: 23

0
Ответов: 1700
Рейтинг: 120
#10: 2020-09-15 16:26:26 ЛС | профиль | цитата
Netspirit писал(а):
А что, KOL.TList не хватало?

Я не изучал, но не всегда песок хорошая замена овсу. © О. Генри
Даже не из за того, что всю "логику" надо перелопатить.
andrestudio, спасибо, что понял!
Ведь улыбка это флаг корабля!
Я просто хотел сказать, что больше и больше отдаляюсь от шаманства портации в КОЛ и вообще от паскаля.
Мне вообще кажется, что создалась какая то микро-экологическая ниша, изолированная от внешнего мира и всякое вмешательство из вне несёт диссонанс.
И нельзя требовать Хромов и т.д.
Но есть-же пещеры, в которых идёт отдельная жизнь.
Когда атомною бомбою всех сотрёт с лица Земли, то там ничего не изменится!
И, кстати, все счастливы там!

Редактировалось 1 раз(а), последний 2020-09-15 16:30:52
карма: 5

0
Ответов: 4641
Рейтинг: 513
#11: 2020-09-15 16:36:24 ЛС | профиль | цитата
Netspirit писал(а):
А что, KOL.TList не хватало?

Времени просто нет вообще для экспериментов(даже в компонент завернуть)
А так можно и плагин сделать к среде HiAsm вот заготовка delphi & FPC делайте на здоровье https://forum.hiasm.com/getfile/39133
карма: 6

0
Ответов: 1700
Рейтинг: 120
#12: 2020-09-15 17:32:23 ЛС | профиль | цитата
andrestudio писал(а):
Времени просто нет вообще для экспериментов(даже в компонент завернуть)

В том то и дело!
Если есть исходники, а не к dll готовой обращаться, то 99% всё заменяется.
Только геморрой со временем.
Тут как не крути, тупая и не интересная работа.
На сколько тебе это интересно!?
Другое дело, сделать автомат заменяющий всё под КОЛ, как я делал для DLLloader и С++2PAS - для меня было бы интересней, чем строки ровнять.
Кто пишет - тот автоматом отступы делает.
Кстати, у меня есть внятный парсер диалектов паскаля.
Netspirit не просто начал делать...
Но более 50% наработанного отрубается, может меньше, а кто делал - того уж нет и те далече.
А чего смущает вписать CLASSES.PAS, SYSUTILS.PAS?
В FPC они другие? Могу дать посмотреть исходники, где по $IF Def\Defined(...)} под все диалекты собирается!
Я уже более десятка два нарисовал таких компонентов и уже на них собаку съел (если повар нам не врёт).
В чём проблема?
Нету в SVN? - да там много чего нету!
Почему надо подстраиваться под КОЛ ебу-чей?

Редактировалось 2 раз(а), последний 2020-09-15 17:45:32
карма: 5

0
Ответов: 4309
Рейтинг: 670
#13: 2020-09-15 17:54:10 ЛС | профиль | цитата
flint2 писал(а):
А чего смущает вписать CLASSES.PAS, SYSUTILS.PAS? В FPC они другие?
Их нету в официальных компиляторах - что, таскать с каждым компонентом?
карма: 23

0
Ответов: 1700
Рейтинг: 120
#14: 2020-09-15 18:02:28 ЛС | профиль | цитата
flint2 писал(а):
https://yadi.sk/d/NoLHcM1BtbG_5w - это родные d4, а не коловские. В ..\HiAsm\compiler\Delphi\

Зачем таскать за каждым компонентом?
Закинул "В ..\HiAsm\compiler\Delphi\" один раз, да и дело с концом!
Да, будут глупые вопросы, что ругается компилятор, что того нет, да того нет, дай ..., дай ложку.
Это всё можно оформить каким-то образом.
Допустим, отдельная тема, куда ссылаться и свой "SVN" в заглавии.
Главное, что всё старое работает!
Всё зависит от адекватности пишущего.
Будут крендели, кто будет пытаться скачанные исходники в IC вставлять.

Их нету в официальных компиляторах - что, таскать с каждым компонентом?

Ты пробовал? - Мне нравится!
Это даже более высшего порядка заморочки, чем кубики собирать.
Зато прямая пойдёт в гору, как в начале, и народ потянется!
Я не брошу(плечо подставить, если ума хватит) - Потому-что ты хороший!

Редактировалось 12 раз(а), последний 2020-09-15 19:32:52
карма: 5

0
Ответов: 4641
Рейтинг: 513
#15: 2020-09-15 19:46:57 ЛС | профиль | цитата
flint2, тут просто с FPC много завязано. Легальность нужна, отсюда все и заморочки.
Мне допустим нужен полный аналог функции Format для FPC
У кого есть
карма: 6

0
Сообщение
...
Прикрепленные файлы
(файлы не залиты)