Приветствую.
Если это кому-то здесь ещё нужно.
Можно из ".dpr" получать ".exe", а затем конвертировать его с помощью exe2kos в ".kex".
Есть проблема, что размер получается больше, чем надо, это особенность работы exe2kos.
Но с помощью kpack это всё равно хорошо сжимается.
Есть такая штука "PE Tool" http://forum.cantorsys.com/viewtopic.php?id=25
По идее должно помочь использование "PE Tool" с ключом "-rebase 00000000", но для нуля оно почему-то не работает.
Я писал автору на майл, но возможно ему некогда, или сообщение не дошло, или попало в спам.
Вот продублирую его сюда:
Хотел с помощью Pet сделать "-rebase 00000000" для сборки приложения под KolibriOS с помощью exe2kos.
Но Pet не хочет делать "-rebase 00000000". Вроде бы в исходнике Pet есть такая проверка, но с чем это связано - не понятно.То есть, я хочу сделать так: .dpr-->dcc32-->EXE-->pet-->exe2kos-->KEX
В принципе и так работает, но размер получается больше, хотя там просто нули, и это сжимается упаковщиком, но лишнюю память занимает.Я сейчас использую минимальный system+sysinit, хотя, конечно, для полноценной работы этого не достаточно.
Если интересно, то вот такой пример:
Выводит в консоль полный путь к файлу, параметры командной строки, текущую директорию.
Устанавливает директорию программы в качестве текущей(SetCurrentDirectory).
Выводит размер файла с программой в байтах.
Создаёт в папке с программой новую папку(CreateDirectory) "NewFolder" и копирует(ReadFile+WriteFile) туда файл с программой.
В самой ОС работает, а под KlbrInWin глюк, похоже не верно обрабатывается текущая директория.make(Test).bat чтобы собрать этот пример.
system+sysinit используются минимальные, если что-то нужно не Windows\Linux специфичное, то копируйте из оригинала "Borland\Source\Rtl\Sys\System.pas" и "Borland\Source\Rtl\Sys\Sysinit.pas"
Если кому будет интересно, то могу продолжить.
Отредактировано 0CodErr (2019-06-26 10:54:20)