один exe для удобства распространения (можно со сжатием, можно без, не принципиально), причем хочу чтобы этот ехе сразу запускал целевую программу, и чтобы распаковывался в память, а не на диск. Кто-то знает инструменты для этого?
7z/rar/zip sfx
они все распаковывают на диск но в целом 7z хорошая штука, там есть интересные опции, когда-то делал. Но не хочу вытирать SSD каждым запуском.
Что именно ты имеешь в виду под "распаковывался в память" ?
есть утилиты типа Ram2Disk
в оперативную, конечно. Не создавая файлов на диске.
окей, а запускать как?
А как ты себе это представляешь? Кто будет выделять нужный объём памяти? Как должно быть организовано обращение к файлам?
И чем тебе мешают файлы на диске?
не хочу создавать мусор, ещё и при каждом запуске
какой именно мусор? что это за файлы, которые создают мусор?
конкретных деталей не знаю, но интуиция и опыт программирования на WinAPI подсказывают, что это возможно. Выделять и менеджить это всё будет, очевидно, промежуточный исполняемый файл, который в том числе запустит целевой exe.
https://t.me/pro_windows/349755 там есть опции самоудаления после выполнения
А что должен делать этот exe с несколькими dll ?
пиши виртуальную машину
А что должен делать этот exe с несколькими dll ?
думаешь он настолько тупой? :)
Загружать. Из композитного файла / архива. Может быть через хук на LoadLibrary.
не обязательно, есть же композитный файл. Главное - новых файлов не плодить.
опыт программирования должен подсказать интуиции как работает память, файловые системы и исполнение кода
тсс, дальше пусть он сам :) мы же не будем способствовать развитию и распространению вредоносов
я смотрю, малварщикам везде вредоносы мерещатся. Абсолютно чистое приложение для конечного пользователя, которое не трогает никакие другие приложения и ничего никуда не инъектирует, но нужно запаковать Qt с глаз подальше и дать клиентам один .exe.
да удачи ему на современных операционках )
выполняемое из памяти, ага
не оставляющее следов на диске ! :)
я уже объяснил, что мне пофиг, из памяти или нет, файл есть.
Нe собери бинарь со статической линковкой библиотек.
Выше уже обсудили, запрещено это делать. И для этого мне пришлось бы компилить Qt самому, так что нет, спасибо, найду способ сбандлить.
ну епт, бинарь с динамической линковкой всегда будет ожидать внешних либ. Тебе нужно подниматься на уровень выше, в контейнеризацию.
Почитай чтонить про ресурс ссд в 2023 году..
Зависит от многих факторов. Поэтому смотрим на TBW и DWPD. Но да, они такие, что для домашнего использования как-то похер.
Ты не понимаешь. 200мб. Это другое !!
Ага, не 640КБ.
Обсуждают сегодня