2014-01-24 2 views
0

Я хотел бы изменить название существующего exe-файла, у которого нет исходного кода. Это можно сделать с помощью приложения смены названия, но я хочу, чтобы он был постоянным.Изменение заголовка скомпилированного/сжатого EXE

Это повторный пост, поскольку мой предыдущий вопрос был немного расплывчатым, пожалуйста, не преувеличивайте мой вопрос, поскольку я новичок в программировании, но не могу найти нигде больше, чтобы спросить.

+0

Поиск строки внутри двоичного файла и изменение это самый простой способ (для не запутанной программы), просто длина новой строки должна быть <= текущей строкой. – nhahtdh

+0

Обратите внимание, что это может быть против EULA вашего продукта. – Csq

ответ

3

В теории вы можете использовать двоичный редактор для поиска исполняемого файла для текста заголовка. Затем вы можете изменить символы на все, что захотите, если число символов равно точно такое же (если оно изменится, вы можете испортить макет файла и могут произойти плохие вещи, в зависимости от того, как/где текст сохранены).

Возможно, это не сработает. Например, для программ довольно сложно программно изменить текст заголовка, добавив имя открытого файла или аналогичного файла. В таких случаях, вероятно, будет невозможно правильно изменить двоичный код без какой-либо серьезной обратной инженерии.

Важно также знать, что изменение чего-либо в двоичном файле может иметь неожиданные побочные эффекты. Например, одна и та же строка может использоваться какой-либо другой частью программы, и в этом случае вы также неизбежно измените ее.

+0

Зачем ему нужен одинаковый размер? Разве это не будет нормально, если новая строка будет равна или меньше по размеру? – typ1232

+1

@ typ1232: Это зависит от того, как и где он хранится. Если вы измените размер, это означает, что все после него в файле перемещается. Это может привести к недействительности смещений байтов. –

+1

Да, конечно, вам нужно сохранить размер. Но вы можете легко сделать это, например, заменив «hello» на «abc \ 0 \ 0». Каждая функция c-строки в исполняемом файле будет обрабатывать только «abc». – typ1232

2

Если заголовок хранится как ресурс внутри исполняемого файла, вы должны иметь возможность использовать любой редактор ресурсов для его изменения, например. ResEdit

+0

Спасибо за вход, но я боюсь, что это не может быть сделано в моем случае:/хотелось бы, чтобы это было легко. Я бы 1 до вас, если бы у меня был представитель haha ​​ – MoltenVidia

Смежные вопросы