gcs_dk
@gcs_dk
Идущий по пути

Возможно ли объединять .exe с .txt, используя Python?

Добрый вечер всем, ребята!

Не хочу вам показаться не адекватным, мне предложили работу и у них таковы требования:
"Знания в Python и умение объединять exe с txt и другими расширениями".
И я вот думаю, может быть .txt в .dat перевести и уже затем шаманить? Если возможно, подскажите, куда копать?
  • Вопрос задан
  • 250 просмотров
Решения вопроса 5
Moskus
@Moskus
А теперь представьте себе, что люди, которые подобным безграмотным образом формулируют требования, будут вами руководить. Вы будете тут постоянно спрашивать, что же они имели в виду? Или решите уволиться через неделю?
По сути формулировки, им, вероятно, нужно делать исполняемые файлы, которые написаны на Python, и в которые (в виде ресурсов, например) внедрены текстовые данные. Это возможно, но зачем это писать в вакансии?
Ответ написан
Zoominger
@Zoominger Куратор тега Python
System Integrator
Повангую: очевидно, имеется в виду скрипт на Пистоне, который что-то подтягивает из текстовых файлов, эдакие плагины для бедных.
Но я могу ошибаться.
Ответ написан
NeiroNx
@NeiroNx
Программист
можно pyinstaller и py2exe такое могут
Ответ написан
delvin-fil
@delvin-fil
Crazy Linux-admin
Знания в Python и умение объединять exe с txt и другими расширениями

Не соглашайся. Через каждые полчаса будешь ВСЕ переделывать согласно новым хотелкам.
Ответ написан
Комментировать
Wolfnsex
@Wolfnsex
Если не хочешь быть первым - не вставай в очередь!
Сразу уточню, что возможно я не до конца понимаю о чём речь и не понимаю вообще что такое ".dat" и зачем он в данном случае нужен. Но, суть вашего вопроса напомнила мне мои потуги ~15-летней давности написать собственный архиватор, который мог бы создавать само-распаковывающиеся архивы. В те времена, я достаточно дотошно изучал структуру .EXE-файлов... и в какой-то момент обнаружил, что Вы можете дописывать в конец практически любого (исключения в основном составляют программы проверяющие собственную целостность при запуске) .EXE-файла любые другие данные. Более того, все само-распаковывающиеся архивы работают именно по такому же принципу - в конец .EXE-файла - просто дописывается архив, после чего, при запуске, файл (SFX-архив) читает сам себя, смещая указатель на длину (размер) исходного .EXE-файла (за которым соотв. идёт уже архив).

Иными словами, Вы можете дописывать что угодно в конец EXE-файла не нарушая его работоспособность, хоть TXT-файлы, хоть картинки, хоть BluRay фильм туда добавьте... Делается это максимально просто на любом (ну или почти любом) языке, просто открываете .EXE-файл, в бинарном режиме, на запись, открываете другой файл (текстовый или любой другой), так же в бинарном режиме, смещаете указатель в первом файле в самый конец, пишите данные из 2-го файла. Собственно... и всё. Причём тут конкретно Python - я понятия не имею.

P.S. Кстати да, можете эксперимента ради найти "башку" от любого самораспаковывающегося архива (это которая .EXE) и дописать ей в конец архив, в результате чего обычный архив превратится в SFX/EXE...
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы