我正在使用C#,我希望得到我的项目参考中的一些dll的版本。我知道我可以通过假设文件在当前文件夹中来获得它,但是,情况可能并非总是如此。有没有更强大的方法来做到这一点?
答案 0 :(得分:5)
Getting File Version Information
例如,
AssemblyName[] asmNames = asm.GetReferencedAssemblies();
foreach (AssemblyName nm in asmNames)
{
Console.WriteLine(nm.FullName);
}
private bool GetReferenceAssembly(Assembly asm)
{
try
{
AssemblyName[] list = asm.GetReferencedAssemblies();
if (list.Length > 0)
{
AssemblyInformation info = null;
_lstReferences = new List();
for (int i = 0; i < list.Length; i++)
{
info = new AssemblyInformation();
info.Name = list[i].Name;
info.Version = list[i].Version.ToString();
info.FullName = list[i].ToString();
this._lstReferences.Add(info);
}
}
}
catch (Exception err)
{
this._errMsg = err.Message;
return false;
}
return true;
}
答案 1 :(得分:0)
您可以使用以下代码获取包含指定类
的程序集的位置System.Reflection.Assembly.GetAssembly(typeof(SpecifiedClass)).Location