C# assembly.load из байта [] выдает

У меня есть EXE-файл, загруженный в байтовый массив, и я пытаюсь загрузить его в объект сборки с помощью Assembly.Load. Я получаю ошибки, пытаясь загрузить.

Вот код, который вызывает исключение:

Assembly a = Assembly.Load(bin);

bin - это мой байтовый массив, загруженный из EXE.

Вот исключение, которое я получаю:

Не удалось загрузить файл или сборку '109590 байт, загруженных из calc_tester, Version=1.0.0.0, Culture= нейтральный, PublicKeyToken=null' или одной из ее зависимостей. Была предпринята попытка загрузить программу с неверным форматом.

Любая помощь приветствуется.

2 ответа

Решение

Убедитесь, что файл, который вы пытаетесь загрузить, является.NET Managed exe/dll.

Я не уверен, но, поскольку это EXE-файл, он может перестать работать из-за неуправляемых заголовков в EXE-файле?

Почему бы просто не сделать LoadFrom(имя файла)?

Другие вопросы по тегам