WebClient неверно скачивает файл

350
10 июня 2017, 12:30

Есть хостинг на котором лежит файл. Файл создан из dll библиотеки прочитанной ReadAllBytes и сохраненной WriteAllBytes как массив байтов, на это не важно. Сама по себе библиотека работает. Если брать новый файл - массив байт и загружать его как dll тоже все хорошо :

byte[] all = File.ReadAllBytes(@"ByteDll.mvvm");
Assembly a = Assembly.Load(all);
object o = a.CreateInstance("Library.Class1");
Type t = a.GetType("Library.Class1");
MethodInfo mi = t.GetMethod("mess");
mi.Invoke(o, null);

проблема начинается если я выкладываю ByteDll на хостинг и потом скачиваю его так:

WebClient client = new WebClient();
client.DownloadFile("http://iwwwi.esy.es/", "ByteDll.mvvm");

Скачанный файл на четверть меньше по размеру и при запуске возникает ошибка :

Не удалось загрузить файл или сборку "3547 bytes loaded from ReadWriteBytes, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" либо одну из их зависимостей. Была сделана попытка загрузить программу, имеющую неверный формат.

Хотя если я просто руками скачаю тот же файл он будет работать как положено.

Пробовал так :

byte[] all = client.DownloadData("http://iwwwi.esy.es/");
Assembly a = Assembly.Load(all);

результат тот же.

Answer 1

Просто адрес был не правильны. Вот как нужно было :

        var all = client.DownloadData("http://iwwwi.esy.es/ByteDll.mvvm");
        Assembly a = Assembly.Load(all);
READ ALSO
Unity, Не работает переход на другую сцену

Unity, Не работает переход на другую сцену

Делаю игрушку на andriod, есть две сцены main и menuСоответственно main - сама игра, а menu - игровое меню до запуска

582
С#. Переопределение метода GetHashCode [дубликат]

С#. Переопределение метода GetHashCode [дубликат]

На данный вопрос уже ответили:

308
Как экранировать символы в запросе MS SQL Server?

Как экранировать символы в запросе MS SQL Server?

Имеется программа на С#, работающая с MS SQL Server:

547
C# word поиск и вывод меток

C# word поиск и вывод меток

Добрый деньУ меня есть документ Doc

315