如果知道dll文件是面向32位系统还是面向64位系统的?
http://www.cnblogs.com/qguohog/archive/2011/09/13/2174897.html
在發(fā)布dll時,可以選擇編譯為x86模式、x64模式以及Any Cpu模式等。那么對于已經(jīng)發(fā)布的dll文件,怎么知道它是支持什么系統(tǒng)的呢?
方法一:Reflector
???? 對于.Net dll文件,用Reflector工具可進行辨別:
??? 其中的Platform Target就指明了該dll在編譯時選擇的目標(biāo)系統(tǒng)。
?
方法二:CorFlags.exe工具
??? 使用Vistual Studio.Net自帶的corflags工具,先打開vs.net 命令窗口:
???
??? 輸入coreflags <assembly path>:
???
??? 其中PE和32BIT的值可以看出該dll支持的系統(tǒng)位數(shù):
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>
????
???? 查看machine相關(guān)屬性可辨別其支持的系統(tǒng)位數(shù)。
???? 該方法還可以查看非.Net編譯的dll信息。
=======================================================================
野文(Jasson Qian)
------------------------------------------------------
博客園:http://qguohog.cnblogs.com
CSDN:http://blog.csdn.net/sallay
?
與50位技術(shù)專家面對面20年技術(shù)見證,附贈技術(shù)全景圖總結(jié)
以上是生活随笔為你收集整理的如果知道dll文件是面向32位系统还是面向64位系统的?的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 查看dll文件被哪些软件调用的命令
- 下一篇: Hibernate 实体关联关系映射--