2014-01-16 2 views
0

У меня есть C# .NET DLL, которую я пытаюсь установить. Я выбрал .NET Reflector с плагином Reflexil для работы (вместе с de4dot для деобфускации). Отражатель смог очень успешно показать мне C#, который я хотел увидеть, и я смог исправить сборку CIL с помощью Reflexil. Когда я попытался сохранить DLL как новый двоичный файл, Reflexil дал мне диалоговое окно Signed Assembly, я выбрал Remove Strong Name.Ожидается, что модуль будет содержать сборку mainfest

Когда я пытаюсь запустить код, который загружает сборку я получаю ошибку:

System.BadImageFormatException: Could not load file or assembly 'MyAssembly, Version=1.0, Culture=neutral, PublicKeyToken=somehash' or one of its dependencies. The module was expected to contain an assembly manifest. 

Как решить эту проблему?

Кроме того, если я использую peverify.exe на исправленной DLL, я получаю сообщение об ошибке: Файл не найден или имеет плохие заголовки. Это заставляет меня думать, что что-то не так с процессом исправления Reflexil?

+0

Обратное проектирование - это зло. Не зли. – evanmcdonnal

+2

Обратное проектирование - это инструмент/техника. Использовать его для зла - это зло. Хорошо использовать это. Используйте свои силы. Используйте свои силы хорошо. Используйте свои силы ради добра, а не зла. – DarcyThomas

+0

@evanmcdonnal Создание вещей, которые нельзя эффективно использовать без необходимости обратного проектирования, - зло. Не будь злым. –

ответ

1

Обычно вы можете добавить файл манифеста сборки в свой проект (щелкните правой кнопкой мыши по проекту, добавьте новый файл и выберите файл манифеста приложения). Это относится к DLL, которая будет создана из вашей сборки. После добавления файла манифеста при щелчке правой кнопкой мыши по проекту и выборе свойств на вкладке «Приложение» вы увидите, что файл манифеста выбран в раскрывающемся списке внизу.

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

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

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