Теперь Кью работает в режиме чтения

Мы сохранили весь контент, но добавить что-то новое уже нельзя

Как узнать исходный код программы?

Программа написана на с++

It (информационные технологии)+2
Айлин Мирай
  ·   · 7,1 K
Лучший
🍀 Естествоиспытатель   · 1 апр 2021  · shymanovsky.mooo.com

Кью, похоже, перестал удалять технические вопросы. Спасибо.

В общем говоря - никак. После компиляции исходного кода получается два набора файлов - "исходники" и "бинарники". И эти наборы утрачивают связь друг с другом.

Можно можно перегнать двоичный код в ассемблер специальными программами. Но тогда получится исходный код на ассемблере. Такие программы хорошо и правильно работают.

Существуют программы, перегоняющие двоичный код обратно в С++.

Сам я ими не пользовался, поэтому не знаю, насколько хорошо они это делают. Одним словом узнать исходный код нельзя. Зато можно примерно создать из бинарника. "Примерно" - это потому что восстановленный код будет сильно отличаться от оригинала. В основном это касается имен переменных, объявленных типов данных, расположением блоков программы и в таком духе. А точно узнать исходный код невозможно.

Кроме того, в начале компиляции запускается так. наз. препроцессор, который меняет исходный код. Обратную процедуру не выполняют никакие программы.

Спасибо,дизассемблеровала exe-файл в IDA и уже расмотрела код на asm

Работа - в сфере IT. Увлечения - книги, финансы...  · 1 апр 2021  ·
id
Если у вас под рукой только готовый бинарник (исполняемый файл), то исходный код узнать будет проблематично. Если у вас есть контакт с разработчиками программы, то вы могли получить код вместе с программой, и он содержится в... Читать далее
Заходите в Яндекс.ДзенПерейти на bit.ly/3w79GNg