Декомпилируйте C # Exe с частичным исходным кодом - PullRequest
4 голосов
/ 11 января 2011

Я поддерживаю программу на C # на работе, и из-за сбоя жесткого диска я потерял большой кусок кода для уже развернутой версии (что является моей собственной ошибкой в ​​том, что я не достаточно часто загружал репозиторий git), и теперь я должен сделатьнекоторые изменения в программе.У меня есть исходный код более старой версии программы, и я хочу декомпилировать исполняемый файл и объединить его со старым исходным кодом, чтобы восстановить потерянный код.

Я знаю, что могу декомпилировать с помощью таких инструментов, как отражатель,но я не хочу сливать его со старым кодом вручную, так как тогда я мог бы просто закодировать изменения снова (около 1-2 дней работы).Это возможно, или мне нужно пройти через дамп кода вручную?

Ответы [ 2 ]

7 голосов
/ 11 января 2011

Я предлагаю вам перекомпилировать старый код и декомпилировать его с помощью рефлектора.

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

Я не вижу, как это будет лучше, если честно.Конечно, это будет ручной процесс, но он все равно сэкономит вам время.

0 голосов
/ 11 января 2011

Я должен был сделать это один раз, я рекомендую Dis #.

Редактировать:
Теперь ILSpy намного лучше

...