随着现在操作系统64Bit使用越来越广泛,相关的软件也紧跟潮流,因为不再局限于4GB内存的限制,可以肆无忌惮的发挥性能优势,Esri的ArcGIS产品也是一样,在仅仅只有ArcSDE分32Bit和64Bit的时候,ArcGIS Server10.1就只有64Bit软件,但是常用的ArcGIS Desktop1
随着现在操作系统64Bit使用越来越广泛,相关的软件也紧跟潮流,因为不再局限于4GB内存的限制,可以肆无忌惮的发挥性能优势,Esri的ArcGIS产品也是一样,在仅仅只有ArcSDE分32Bit和64Bit的时候,ArcGIS Server10.1就只有64Bit软件,但是常用的ArcGIS Desktop10.1、ArcGIS Engine10.1还仍然是32Bit的程序,我们也知道10.1以后的版本推荐直连,那么针对32Bit的程序就需要使用32Bit的oracle客户端来连接,那么怎么才能判断oracle客户端的位数呢?
对oracle服务器端的位数非常好判断,只需要连接成功sqlplus就可以很明显的看到oracle服务端的位数
C:\Users\Administrator>sqlplus system/oracle@orcl_165 SQL*Plus: Release 11.2.0.1.0 Production on 星期日 1月 6 10:48:22 2013 Copyright (c) 1982, 2010, Oracle. All rights reserved. 连接到: Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production With the Partitioning, OLAP, Data Mining and Real Application Testing options SQL>我们可以很明显的看到64Bit的标志
那么对oracle客户端来说怎么办呢?如果是自己安装的oracle客户端,当然知道位数了(废话)
Linux 操作系统
对Linux来说,这个也很容易查看,我们只需要使用file命令,对安装好的oracle任意文件(.so、.exe等)就可以查看位数
[oracle@rhsde bin]$ file sqlplus sqlplus: ELF 64-bit LSB executable, AMD x86-64, version 1 (SYSV), for GNU/Linux 2.6.9, dynamically linked (uses shared libs), for GNU/Linux 2.6.9, not stripped通过上面可以看出是64Bit的程序
Windows操作系统
对Windows操作系统,特别是oracle软件或者已知的程序有几种方法可以参考
1:使用tnsping的方法来查看
C:\Users\Administrator>tnsping orcl TNS Ping Utility for 32-bit Windows: Version 11.2.0.1.0 - Production on 06-1月 -2013 10:30:27 Copyright (c) 1997, 2010, Oracle. All rights reserved. 已使用的参数文件: D:\app\Administrator\product\11.2.0\client_1\network\admin\sqlnet.ora 已使用 TNSNAMES 适配器来解析别名 尝试连接 (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = lish)(PORT = 1521))) (CONNECT_DATA = (SERVICE _NAME = orcl))) TNS-12541: TNS: 无监听程序从上面可以明显看到我的客户端安装的是32Bit的
注意:有时候用户可能既安装了32Bit的软件又安装了64Bit的软件,这时候主要查看哪个环境变量在前面
2:查看任务管理器
这个也可以应用于相关程序,我们可以运行相关程序,或者执行一个sqlplus命令,查看任务管理器
同样,这种方法可以应用到现在可以运行的软件来判断相关的位数。
3:使用Dependency Walke来判断
Dependency Walker is a free utility that scans any 32-bit or 64-bit Windows module (exe, dll, ocx, sys, etc.) and builds a hierarchical tree diagram of all dependent modules. For each module found, it lists all the functions that are exported by that module, and which of those functions are actually being called by other modules. Another view displays the minimum set of required files, along with detailed information about each file including a full path to the file, base address, version numbers, machine type, debug information, and more. Dependency Walker is also very useful for troubleshooting system errors related to loading and executing modules. Dependency Walker detects many common application problems such as missing modules, invalid modules, import/export mismatches, circular dependency errors, mismatched machine types of modules, and module initialization failures. Dependency Walker runs on Windows 95, 98, Me, NT, 2000, XP, 2003, Vista, and 7. It can process any 32-bit or 64-bit Windows module, including ones designed for Windows CE. It can be run as graphical application or as a console application. Dependency Walker handles all types of module dependencies, including implicit, explicit (dynamic / runtime), forwarded, delay-loaded, and injected. A detailed help is included. Dependency Walker is completely free to use. However, you may not profit from the distribution of it, nor may you bundle it with another product.下载地址:
Download Version 2.2.6000 for x86 (Windows 95 / 98 / Me / NT / 2000 / XP / 2003 / Vista / 7) [610k] | |
Download Version 2.2.6000 for x64 [468k] |
Download Version 2.2.6000 for IA64 [605k] |
使用这个工具,32Bit的Dependency可以打开32Bit的文件,但是打不开64Bit的文件,这样也能判断到底是32还是64Bit的
总体感觉,Windows这方面不如Linux好用,特别是我只想知道某个dll是否是多少位,除了使用该软件,我还没有找到其他好用方便的方法?
如果大家有谁知道,欢迎回复交流!
-------------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------------