args.Name Почему-то содержит = "Project_file_backup.resources, Version=1.0.0.0, Culture=ru-RU, PublicKeyToken=null"
И всегда: return null:
static Assembly CurrentDomain_AssemblyResolve(object sender, ResolveEventArgs args)
{
if (args.Name.StartsWith("7z"))
{
return Assembly.Load(Project1.Properties.Resources._7z);
}
else
return null;
}
AppDomain.CurrentDomain.AssemblyResolve += CurrentDomain_AssemblyResolve;
var a = Assembly.Load(Project1.Properties.Resources._7z);
SevenZipCompressor.SetLibraryPath(Path.Combine("", a.FullName));
{"Не удалось загрузить файл или сборку \"1073664 bytes loaded from Project_file_backup, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null\" либо одну из их зависимостей. Была сделана попытка загрузить программу, имеющую неверный формат."}
System.BadImageFormatException не обработано FileName=1073664 bytes
loaded from Project_file_backup, Version=1.0.0.0, Culture=neutral,
PublicKeyToken=null FusionLog="" HResult=-2147024885 Message=Не
удалось загрузить файл или сборку "1073664 bytes loaded from
Project_file_backup, Version=1.0.0.0, Culture=neutral,
PublicKeyToken=null" либо одну из их зависимостей. Была сделана
попытка загрузить программу, имеющую неверный формат.
Source=mscorlib StackTrace:
в System.Reflection.RuntimeAssembly.nLoadImage(Byte[] rawAssembly, Byte[] rawSymbolStore, Evidence evidence, StackCrawlMark&
stackMark, Boolean fIntrospection, SecurityContextSource
securityContextSource)
в System.Reflection.Assembly.Load(Byte[] rawAssembly)
в MyProcess.FileBackup.AddToArchive2(String[] fileNames, String archiveName)
...
в System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean
preserveSyncCtx)
в System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
в System.Threading.ThreadHelper.ThreadStart() InnerException:
HResult=-2147024885
Message=Неправильный формат IL.
InnerException:
Вариант2
public static void Load(string name)
{
String resourceName = "app1." +
new AssemblyName(name).Name + ".dll";
using (var stream = Assembly.GetExecutingAssembly().GetManifestResourceStream(resourceName))
{
Byte[] assemblyData = new Byte[stream.Length];
stream.Read(assemblyData, 0, assemblyData.Length);
Assembly.Load(assemblyData);
}
}
...
Load(@"Resources\7z.dll");
//var currentDir = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);
//SevenZipCompressor.SetLibraryPath(Path.Combine(currentDir, @"Resources\7z.dll"));
SevenZipCompressor.SetLibraryPath(Path.Combine(currentDir, ???Что здесь писать?));
//???Что здесь писать
Смотрю как делают здесь:
http://www.sql.ru/forum/868852/kak-sdelat-takoy-appdomain-currentdomain-assemblyresolve
https://blogs.msdn.microsoft.com/microsoft_press/2010/02/03/jeffrey-richter-excerpt-2-from-clr-via-c-third-edition/#comments
http://www.cyberforum.ru/attachments/433016d1410669282
Как правильно протестировать Data access layer с помощью Mock, а именно репозитории, предоставляющие доступ к базе данных через контекст?
Хоть и есть несколько статей на хабре, есть реализация на C++, не могу понять как переделать это под С#Может быть вдруг кто-то реализовал?
Добрый день! Мне нужно получить gmail письма пользователяПрограмма открывает ссылку авторизации в WebBrowser, пользователь входит, я получаю код