繁体   English   中英

如何以编程方式检测DLL是在.NET中编译为32位还是64位?

[英]How can I detect, programmatically, whether a DLL is compiled 32bit or 64bit in .NET?

到目前为止,我已经能够使用以下代码加载dll:

Assembly^ assembly = Assembly::LoadFrom(pathDll);

但是我不知道如何检测它是32位还是64位。

我认为我已经找到了答案。 当然,首先,您必须通过以下代码行与dll关联的程序集:

Assembly^ assembly = Assembly::LoadFrom(pathDll);

然后,您可以通过以下代码获取有关平台的信息:

ProcessorArchitecture processor_architecture = assembly->GetName()->ProcessorArchitecture;
        if (ProcessorArchitecture::Amd64 == processor_architecture)
        {
            // 64bits
        }
        if (ProcessorArchitecture::X86 == processor_architecture)
        {
            //32 bits
        }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM