Обнаружить фрагмент кода по взгляду на двоичный файл - PullRequest
1 голос
/ 23 июня 2010

Без работы с исходным кодом, только на основе двоичного файла, есть ли способ (наверняка должен использоваться CodeDom, но было бы неплохо, если бы это было возможно без CodeDom), определить, имеет ли тело методаесли построить, используя отражение?

Ответы [ 2 ]

0 голосов
/ 09 октября 2010
  1. Декомпиляция (по совету Криса)
  2. Запуск декомпилированного кода через анализатор кода (см., Например, CS Parser для C # 2.0: http://csparser.codeplex.com/
  3. Использовать выходные данные анализатора дляполучить необходимую информацию, такую ​​как наличие токена Y в теле метода Z.
0 голосов
/ 23 июня 2010

Если это .Net, возьмите отражатель .

обновление
После просмотра вашего комментария я думаю, что по вашему вопросу пропущено много информации.В частности, на каком языке написан бинарный файл?Вы спрашиваете, как декомпилировать данный двоичный файл .Net, или вы спрашиваете, как использовать .net для декомпиляции двоичного файла, написанного на каком-то другом языке, не основанном на .Net Framework?

Если последний, то нет,рефлексия не позволит вам определить, какой код существует.

Если первое, то я озадачен.Цель рефлектора - декомпилировать двоичные файлы .net ... после чего вы можете просто визуально проверить, действительно ли оператор if существует в рассматриваемом методе.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...