при загрузке файла dll с использованием отражения .net (описание загруженного файла: Microsoft C Runtime Library), я получил ошибку во время выполнения (R6034)
при загрузке dll, которая не использует библиотеку времени выполнения C, она будет загружена успешно,
Могу ли я загрузить DLL, что с помощью среды выполнения C с использованием .net отражения, если нет, то как поймать это исключение?
Найдите мой код ниже:
class ReverseDLL
{
private Assembly assembly;
private AssemblyDescriptionAttribute desc;
private AssemblyTitleAttribute title;
private AssemblyCopyrightAttribute copyRight;
public string getCopyright(string path)
{
try
{
assembly = System.Reflection.Assembly.LoadFrom(path);
}
catch { Console.WriteLine("(private message)Class ReverseDll : Couldn't load dll"); }
try
{
string verInfo = assembly.GetName().Version.ToString();
desc = (AssemblyDescriptionAttribute)
AssemblyDescriptionAttribute.GetCustomAttribute(
assembly, typeof(AssemblyDescriptionAttribute));
title = (AssemblyTitleAttribute)
AssemblyTitleAttribute.GetCustomAttribute(
assembly, typeof(AssemblyTitleAttribute));
copyRight = (AssemblyCopyrightAttribute)AssemblyCopyrightAttribute.GetCustomAttribute(assembly, typeof(AssemblyCopyrightAttribute));
Console.WriteLine("Class ReverseDll , signature: " + copyRight.Copyright.ToString());
}
catch
{
this.copyRight = new AssemblyCopyrightAttribute("");
Console.WriteLine("(private message)Class ReverseDll : reflection not able to pull the needed data ");
}
return copyRight.Copyright;
}
}