我有一个任意的.NET 程序集列表。
我需要以编程方式检查每个 DLL 是否是为 x86(而不是 x64 或任何 CPU)构建的。这可能吗?
看着System.Reflection.AssemblyName.GetAssemblyName(string assemblyFile)
System.Reflection.AssemblyName.GetAssemblyName(string assemblyFile)
您可以从返回的 AssemblyName 实例中检查程序集元数据:
使用 PowerShell :
[36] C:\> [reflection.assemblyname]::GetAssemblyName("${pwd}\Microsoft.GLEE.dll") | 佛罗里达州 名称:Microsoft.GLEE 版本:1.0.0.0 文化信息: 代码库:file:///C:/projects/powershell/BuildAnalyzer/... EscapedCodeBase : file:///C:/projects/powershell/BuildAnalyzer/... **处理器架构:MSIL** 标志:公钥 哈希算法:SHA1 版本兼容性:SameMachine 密钥对: 全名:Microsoft.GLEE,版本=1.0.0.0,文化=中性...
在这里,ProcessorArchitecture标识目标平台。
在此示例中,我使用 PowerShell 来调用该方法。