如何检查OS X上的dll版本?
管理dll,用C#创建,这就是我所知道的。
答案 0 :(得分:5)
取决于您要查找的信息类型...您可以在Xamarin Studio的项目中添加对DLL的引用,然后展开References文件夹&双击DLL ...这将在AssemblyBrowser中打开它,并显示编译到DLL中的AssemblyInfo。
如果您想知道为其构建DLL的体系结构,请在终端窗口中运行:
file insert_filename_here.dll
如果它是x86(或"任何CPU")DLL,它会说:
insert_filename_here.dll: PE32 executable for MS Windows (DLL) (console) Intel 80386 32-bit Mono/.Net assembly
如果它是x64 DLL,它会说:
insert_filename_here.dll: PE32+ executable for MS Windows (DLL) (console) Mono/.Net assembly!
答案 1 :(得分:4)
一种非常快速和简单的方法是发出cat命令并读取最后几行,例如
$ cat mylibrary.dll
答案 2 :(得分:3)
您可以编写一些代码来实现。创建包含以下内容的Program.cs
:
using System;
using System.Diagnostics;
namespace FileVersionInfoExample
{
class Program
{
static void Main(string[] args)
{
var fileName = args[0];
var fvi = FileVersionInfo.GetVersionInfo(fileName);
Console.WriteLine($"FileVersion:\t{fvi.FileVersion}");
Console.WriteLine($"ProductVersion:\t{fvi.ProductVersion}");
}
}
}
要在单声道上查找test.dll
的版本:
csc Program.cs
mono Program.exe test.dll
要在.NET Core上查找test.dll
的版本,请首先创建包含以下内容的Program.csproj
:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>netcoreapp2.0</TargetFramework>
</PropertyGroup>
</Project>
然后运行:
dotnet run test.dll
如果您具有.NET Core 2.1,则可以使用.NET Core全局工具dotnet-versioninfo。可以这样安装:
dotnet tool install --global dotnet-versioninfo
然后运行:
versioninfo test.dll
答案 3 :(得分:1)
如果使用Mono Cecil将程序集加载到内存(AssemblyDefinition.ReadAssembly
),则可以读取版本属性(AssemblyDefinition.Name.Version
)。
https://github.com/jbevain/cecil/tree/master/Mono.Cecil
也可以使用反射,但它需要您将程序集加载到效率不高的appdomain中。
Xamarin Studio内部使用Cecil或反射来查询程序集中的相同信息。
答案 4 :(得分:1)
使用monodis或ikdasm可以这样完成:
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:Button ID="Button1" runat="server" Text="Button" />
答案 5 :(得分:0)
如果您不需要以编程方式使用它,可以在TextEdit中打开它(快速查看,然后单击“在TextEdit中打开”按钮)并一直滚动到底部。你应该看到类似下面的内容
<MonoTouch,Version=v1.0TFrameworkDisplayName MonoTouchXamarin.MobileXamarin Inc.(#Copyright ¬© 2011-2013 Xamarin Inc.0.7.1.0TWrapNonExceptionThrowsÄû.ÄÑSystem.Security.Permissions.SecurityPermissionAttribute, mscorlib, Version=2.0.5.0, Culture=neutral,
PublicKeyToken=7cec85d7bea7798eTSkipVerificationúŸæŸ ∞Ÿ_CorDllMainmscoree.dllˇ% Ä0ÄHX‡@@4VS_VERSION_INFOΩÔ˛?DVarFileInfo$Translation∞†StringFileInfo|000004b0<CompanyNameXamarin Inc.HFileDescriptionXamarin
.Mobile0FileVersion0.7.1.0HInternalNameXamarin.Mobile.dlll#LegalCopyrightCopyright © 2011-2013 Xamarin Inc.POriginalFilenameXamarin.Mobile.dll@ProductNameXamarin.Mobile4ProductVersion0.7.1.08Assembly Version0.7.1.0––9