|
Нарушитель
6318 / 3043 / 1054
Регистрация: 01.06.2021
Сообщений: 11,601
|
|
bin2cpp конвертер бинарных файлов в C++ файлы14.08.2025, 23:38. Показов 5330. Ответов 82
Метки единый exe (Все метки)
Написал конвертер бинарных файлов в C++ файлы. Это нужно для кроссплатформенного внедрения ресурсов в исполняемый файл. Из любого файла можно создать, например, заголовочный файл, внутри которого будет массив с данными. Соответственно, потом можно работать с этими данными непосредственно в памяти.
Публикую прогу для тех, кого может заинтересовать. Полагаю, что похожих программ в инете много, но возможно кому-то понравится именно моя. Тем более, те программы, которые я встречал, работали медленнее, чем моя, и не имели графического интерфейса. Например, как видно на скриншоте на гитхабе, шрифт OpenSans конвертировался за 14 миллисекунд. Одним словом, хотите пользуйтесь, не хотите - не пользуйтесь. Скачать можно здесь: https://github.com/RoyalXXX/bin2cpp. Там я выложил, в том числе, уже скомпилированные бинарники. Доступны две версии: 1. оконная версия bin2cpp GUI - работает быстрее консольной, есть проверка на валидность имен. 2. консольная версия bin2cpp console (её код открыт и любой может использовать по лицензии MIT - одна из самых свободных лицензий). Эта версия чуть попроще, поскольку имена не проверяются на корректность. И она чуть медленнее, чем версия с оконным интерфейсом - там я немного иначе реализовал. Если будете сами компилировать, то советую использовать mingw-w64-ucrt-x86_64-gcc. Программа, скомпилированная этим компилятором, работает быстрее, по крайней мере, у меня. В обеих версиях есть показ времени конвертирования и вывода прогресса конвертирования.
0
|
|
| 14.08.2025, 23:38 | |
|
Ответы с готовыми решениями:
82
Конвертер Исходных кодов Создание бинарных файлов. Чтение и запись бинарных файлов
|
|
|
||
| 15.08.2025, 13:59 | ||
Когда ведение всех этих зависимостей всех задолбало, стали изобретать эти флетпаки и пр. Чем создали другую проблему - не все программы, усиленно запихиваемые в это пакеты, работают в них корректно. Зато "галочку поставили" - упаковали. Ну и о росте расхода дискового пространства также воют линуксоиды, считающие себя единственно правильными.
0
|
||
|
14727 / 9500 / 1362
Регистрация: 21.01.2016
Сообщений: 35,829
|
||
| 15.08.2025, 14:04 | ||
|
Не всем "приятно" создаёт размер дистрибутива. Многим - вопрос наличия ПО под их операционку, с простой установкой.
0
|
||
|
Нарушитель
6318 / 3043 / 1054
Регистрация: 01.06.2021
Сообщений: 11,601
|
|
| 15.08.2025, 14:06 [ТС] | |
|
Моя позиция такая, что на винде нужно делать статическую линковку, если размер exe не превышает 20-25 МБ.
Если превышает, то в такое случае пусть dll и остальные ресурсы лежат рядом. Еще кишки могут быть рядом, если прога устанавливается через установщик в program files. Там уже пусть эти файлы лежат отдельно, никого это не раздражает. Но если маленькая программа, как вот bin2cpp GUI на 8 МБ, то я не вижу смысла ставить кишки рядом. К тому же, размер получится в сумме чуток больше, чем сейчас. Мне придется положить рядом с exe не только dll от wxwidgets, но и от mingw-w64-ucrt-x86_64-gcc. Для последнего это ibstdc++-6.dll libgcc_s_seh-1.dll libwinpthread-1.dll
0
|
|
|
14727 / 9500 / 1362
Регистрация: 21.01.2016
Сообщений: 35,829
|
|||
| 15.08.2025, 14:08 | |||
|
Правильные приоритеты выбирать надо)
0
|
|||
|
Нарушитель
6318 / 3043 / 1054
Регистрация: 01.06.2021
Сообщений: 11,601
|
||
| 15.08.2025, 14:12 [ТС] | ||
|
Но когда делаю на Qt, то я всегда использую динамическую линковку, чтобы не нарушать лицензию, например
https://royalxxx.itch.io/image-assemble-tool https://royalxxx.itch.io/qt-vigenere Да и на Qt6 как раз 25 МБ будет. Добавлено через 2 минуты
0
|
||
|
14727 / 9500 / 1362
Регистрация: 21.01.2016
Сообщений: 35,829
|
||
| 15.08.2025, 14:13 | ||
|
0
|
||
|
14727 / 9500 / 1362
Регистрация: 21.01.2016
Сообщений: 35,829
|
||
| 15.08.2025, 14:14 | ||
|
0
|
||
|
Нарушитель
6318 / 3043 / 1054
Регистрация: 01.06.2021
Сообщений: 11,601
|
||
| 15.08.2025, 14:18 [ТС] | ||
|
на линуксе и андроиде - это все понятно. Но винда - это винда: мусор остается после удаления...
0
|
||
|
14727 / 9500 / 1362
Регистрация: 21.01.2016
Сообщений: 35,829
|
|
| 15.08.2025, 14:20 | |
|
Royal_X, в чём ты насилие тут видишь? Ты автор софтины. Не создавай ярылки, не вноси записи в реестр. Не создавай по три службы.
Из пальца высасываешь проблему?
0
|
|
|
14727 / 9500 / 1362
Регистрация: 21.01.2016
Сообщений: 35,829
|
|
| 15.08.2025, 14:22 | |
|
Кстати, что мне нужно сделать, чтобы увидеть этот самый мусор в винде и проблемы, которые он создаёт?
0
|
|
|
Нарушитель
6318 / 3043 / 1054
Регистрация: 01.06.2021
Сообщений: 11,601
|
|||
| 15.08.2025, 14:22 [ТС] | |||
|
Винда не линукс, тут всего два варианта: - установить в папку как portable - установить установщиком и захламить систему Конечно, есть магазин Windows, то он не популярен
0
|
|||
|
14727 / 9500 / 1362
Регистрация: 21.01.2016
Сообщений: 35,829
|
||
| 15.08.2025, 14:24 | ||
|
Остальное всё вот такое вот...
0
|
||
|
|
||
| 15.08.2025, 14:25 | ||
|
Все остальные единофайловцы только про крутизну пишут.
0
|
||
|
14727 / 9500 / 1362
Регистрация: 21.01.2016
Сообщений: 35,829
|
|
| 15.08.2025, 14:26 | |
|
0
|
|
| 15.08.2025, 14:29 | |
|
Не по теме: Тема несколько свалилась в холивар, но инсталятор не обязательно создаёт записи в реестре, а один ехе также может насоздавать кучу мусора.
0
|
|
|
Нарушитель
6318 / 3043 / 1054
Регистрация: 01.06.2021
Сообщений: 11,601
|
|||
| 15.08.2025, 14:30 [ТС] | |||
|
Добавлено через 1 минуту если установщик тупо для копирования, то есесена ничего не создает
0
|
|||
| 15.08.2025, 14:30 | |
|
Конвертер бинарных данных Обработка текстовых файлов. Обработка бинарных файлов. Сериализация и десериализация объектов Чтение бинарных файлов Какой путь бинарных файлов Апача в Ubuntu? Обработка текстовых и бинарных файлов. Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Саморегулирующийся социальный контракт для сервера cross-section.
Hrethgir 14.08.2026
С кодом конечно таких глубоких размышлений пока не было, впрочем я уже привык к алгоритмизации. Суть предмета записи: снова в диалоге с нейросетью (я взял пока себе ник для учётки админа - Rector). . . .
|
Часы электронные
Uhbif79 12.08.2026
Выкладываю программу часов. Программа позволяет:
1. Использовать системное время и дату,
2. Есть возможность вводить время и дату вручную.
3. Реализованы 2 будильника: начало и конец рабочего дня. . . .
|
Часы с будильником на основе класса QLCDNumber
Uhbif79 12.08.2026
Всем добрый день, выкладываю программу часов с будильником на основе класса QLCDNumber.
Здесь я пробовал самостоятельно создавал классы, впервые столкнулся с видимостью переменной одного класса из. . .
|
Установка MinGW GCC 16.2 и CMake
8Observer8 10.08.2026
VK Видео:
https:/ / vkvideo. ru/ video-240781534_456239017
YouTube:
eY5-5PyI9NM
Текстовая версия
|
|
Неделя из жизни имитационной модели склада: мои кривые руки растут, откуда надо
anaschu 10.08.2026
Неделя из жизни имитационной модели склада: как я почти написал неправильную логику и что с этим делать
Работаю сейчас над учебно-рабочим проектом: строю в AnyLogic имитационную модель процессов. . .
|
Калькулятор для расчета родства
russiannick 07.08.2026
1. Задача: Создать калькулятор для расчета родства.
Родственных связей существует 8 ступеней, такие как:
p - отец
P - мать
q - муж
Q - жена
b - брат
B - сестра
s - сын
S - дочь
|
Мир по моей воле
kumehtar 07.08.2026
Когда-то кажется, что всё просто. Ты весь такой светлый. Причиняешь добро. Борешься за справедливость в этом тёмном мире.
Потом начинаешь замечать одну неприятную вещь. Почти каждый хороший. . .
|
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С.
Задача:
Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
|