zoukankan      html  css  js  c++  java
  • (转)如果知道dll文件是面向32位系统还是面向64位系统的?

            本文为转载文章,原文地址:http://www.cnblogs.com/qguohog/archive/2011/09/13/2174897.html,仅仅是记录供后续使用,如有侵权请通知删除。

    在发布dll时,可以选择编译为x86模式、x64模式以及Any Cpu模式等。那么对于已经发布的dll文件,怎么知道它是支持什么系统的呢?

    方法一:Reflector

         对于.Net dll文件,用Reflector工具可进行辨别:

    image

        其中的Platform Target就指明了该dll在编译时选择的目标系统。

    方法二:CorFlags.exe工具

        使用Vistual Studio.Net自带的corflags工具,先打开vs.net 命令窗口:

        image

        输入coreflags <assembly path>:

        image

        其中PE和32BIT的值可以看出该dll支持的系统位数:

    anycpu: PE = PE32   and 32BIT = 0
    x86:      PE = PE32   and 32BIT = 1
    x64:      PE = PE32+ and 32BIT = 0

    (可参考:http://blogs.msdn.com/b/gauravseth/archive/2006/03/07/545104.aspx)

    方法三:Dumpin.exe工具

          通过Vs.net tools中所带的dumpin命令可以查看:

         dumpbin /headers <assembly path>

         image

         查看machine相关属性可辨别其支持的系统位数。

         该方法还可以查看非.Net编译的dll信息。

  • 相关阅读:
    [idea]2014.1.13
    [idea]2014.1.12
    纪念我2014.1.4 中国银行广东分行面试
    [essay]2014.1.2
    纪念我12月29日南方电网笔试
    [essay]12.26
    [idea]
    纪念我12月24日终于用妖姬拿首胜了
    Android自动化测试环境部署
    Monitor工具使用详解
  • 原文地址:https://www.cnblogs.com/hhhh2010/p/5063749.html
Copyright © 2011-2022 走看看