Вверх ↑
Этот топик читают: Гость
Ответов: 2059
Рейтинг: 131
#1: 2017-03-09 01:44:27 ЛС | профиль | цитата
Решил продолжить эту тему http://forum.hiasm.com/topic/66334/1 здесь.
Стал пробовать склеивать всё и вся, и оказалось, что без Lua всё прекрасно получается.
Вот что получилось на тему PE, COFF, OMF и OBJ файлов.
dll2pas - линковка dll к программе(компонентам) в виде delphi кода.
exe2dll - преобразование сторонней программы в dll.
exe2pas - преобразование сторонней программы в delphi код и запуск его из своего приложения.
exe2exe - сложение двух исполняемых файлов в один и использование функций второго из приложения сделанного в hiasm(первый файл), или наоборот.
Преобразование, добавление Base Relocation table(+ пересчёт адресов), IMPORTS TABLE и EXPORTS TABLE.
COFF2OMF - преобразование для использования в delphi.
И по мелочи... Буду выкладывать по мере приведения к читабельному виду.
-------------------------------------------------------------------------------------------------------------------------------
http://forum.hiasm.com/getfile/38049
dll2pas - создаёт два файла pointers.txt и *.pas(вместо * имя dll).
В левую часть окна нужно поместить описания функций dll "function BASS_GetVolume: FLOAT; stdcall; external bassdll",
в правой получаем преобразованные строки, которые надо поместить перед IMPLEMENTATION.
"BASS_GetVolume: function: FLOAT; stdcall; "
Если реализована динамическая загрузка, то этот файл не нужен.
В *.pas сам код.
Для каждого компонента всё индивидуально, например SqLite3Api.pas для sqlite3.dll и UnRAR.pas для UnRAR.dll ,
поэтому в одном случае полученный файл можно прописать в поле uses Windows,Kol,Share,Debug,UnRARnew;, а в другом
надо скопировать часть после IMPLEMENTATION и поместит в конец кода с программой.
Смотрите пример в архиве. Bass_old.pas - исходный код компонента, Bass.pas - должен получится после манипуляций.
Не забывайте прописывать в своём коде DLLLoader - uses kol,Share,DLLLoader;
-------------------------------------------------------------------------------------------------------------------------------

Доработал компонент PEAnalysis, так чтобы можно использовать его функции из IC и добавил функции и точки.
Этот компонент потребуется в следующих схемах. http://forum.hiasm.com/getfile/38048

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

4
Голосовали:Nickname, Tad, halt, Konst
vip
#1.1контекстная реклама от партнеров
Ответов: 16884
Рейтинг: 1239
#2: 2017-03-11 16:05:27 ЛС | профиль | цитата
flint2_3.jpg
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Ответов: 2059
Рейтинг: 131
#3: 2017-03-11 22:07:41 ЛС | профиль | цитата
Tad, я не могу ничего сказать по этому поводу.
Я снёс антивирус более чем полгода назад.
P.S.
Скоро выложу схемку exe2dll, так вроде бы антивирус на него(уже exe) не ругался, когда у меня стоял Symantec.
Это так, на всякий случай.
карма: 6

0
Ответов: 16884
Рейтинг: 1239
#4: 2017-03-12 10:26:34 ЛС | профиль | цитата
flint2 писал(а):
я не могу ничего сказать по этому поводу.
А ничего и не надо говорить.
Просто, после запуска твоего Project49, AVAST долго его проверял, потом сказал, что это очень своеобразный файл и попросил разрешения на его проверку в лаборатории. Я разрешил и через пару часов получил сообщение, что файл ЧИСТ.
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
4
Сообщение
...
Прикрепленные файлы
(файлы не залиты)