如果知道dll文件是面向32位系统还是面向64位系统的?

    在发布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信息。


=======================================================================
野文(Jasson Qian)
------------------------------------------------------
博客园: http://qguohog.cnblogs.com
CSDN: http://blog.csdn.net/sallay
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值