我有一个.NET程序集的任意列表。
我需要以编程方式检查每个DLL是否针对x86构建(而不是针对x64或Any CPU)。这可能吗?
最佳答案
看System.Reflection.AssemblyName.GetAssemblyName(string assemblyFile)
您可以从返回的AssemblyName实例检查程序集元数据:
使用 PowerShell :
[36] C:\> [reflection.assemblyname]::GetAssemblyName(“$ {pwd}\Microsoft.GLEE.dll”)| FL
名称:Microsoft.GLEE
版本:1.0.0.0
CultureInfo:
代码库:file:///C:/projects/powershell/BuildAnalyzer/...
EscapedCodeBase:file:///C:/projects/powershell/BuildAnalyzer/...
处理器架构:MSIL
标志:公钥
哈希算法:SHA1
版本兼容性:SameMachine
key 对:
FullName:Microsoft.GLEE,Version = 1.0.0.0,Culture = neut ...
在这里,ProcessorArchitecture标识目标平台。
在此示例中,我使用PowerShell来调用该方法。
关于.net - 如何确定.NET程序集是为x86还是x64构建的?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/270531/