Есть хостинг на котором лежит файл. Файл создан из 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);
результат тот же.
Просто адрес был не правильны. Вот как нужно было :
var all = client.DownloadData("http://iwwwi.esy.es/ByteDll.mvvm");
Assembly a = Assembly.Load(all);
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Делаю игрушку на andriod, есть две сцены main и menuСоответственно main - сама игра, а menu - игровое меню до запуска
Имеется программа на С#, работающая с MS SQL Server: