我将实现一个可以在exe中提取所有引用的dll文件的函数。
我正在使用" System.Reflection.Assembly"这样做。
但我不知道如何获取文件扩展名。
例如,text.exe包含x.dll,y.dll和z.dll
以上代码仅返回x,y,z。
任何人都知道怎么做?
谢谢大家。
System.Reflection.Assembly assemblyFile = System.Reflection.Assembly.LoadFile(exePath);
System.Reflection.AssemblyName[] names = assemblyFile.GetReferencedAssemblies();
foreach (System.Reflection.AssemblyName data in names)
{
listBox2.Items.Add(data.Name);
}
答案 0 :(得分:2)
如果您要查找完整的文件名(例如x.dll),请使用:
foreach (System.Reflection.AssemblyName data in names)
{
var assembly = System.Reflection.Assembly.ReflectionOnlyLoad(data.FullName);
listBox2.Items.Add(System.IO.Path.GetFileName(assembly.Location));
}
答案 1 :(得分:-1)
foreach (System.Reflection.AssemblyName data in names)
{
listBox2.Items.Add(data.FullName);
}