如何在Window 64bit系统上面区分此应用程序是32bit还是64bit的呢?

翻译 2014年12月19日 23:22:52

为了保持向下兼容性,大都数32位的应用程序都能运行在64位的window操作系统上。大都数情况下,我们不必担心,但是有的时候,我们需要确切的知道当前的应用程序到底是32位的应用程序呢,还是64位的应用程序呢?一般来说,有下面的3种方法:

(1) 使用任务管理器识别

如下图,打开任务管理器,并选择Processes的选项卡,32位的程序,其图像名字(Image Name)会包含*32这个关键字。

比如,第一个 chrome.exe*32,这个就代表当前的chrome浏览器应用程序的版本是32位的。



(2)查看应用程序中的可执行文件的路径中是否包含(x86)的关键字

如果应用程序中的可执行文件的路径中包括x86的关键字,一般来说,这个应用程序就是32位的应用程序。

因为在装32位的应用程序的时候,操作系统会自动把安装目录“c:\Program Files“ 映射成C:\Program Files (x86)”,

这表示这个应用程序是32位的应用程序。另外,注意,有一些Window组件不在“c:\Program Files“ 目录下,而是在

C:\Windows\System32 目录下,这个时候我们不要想当然的认为这个目录下的DLL库或者Window的组件就是32位的,

其实不是的,恰恰相反,这个是64位组件的目录;真正32位组件的是放在C:\Windows\SysWow64这个目录下面的,神奇吧,

千万不要被坑了。其实也很好理解,Wow64代表Window 32 on Windows 64.




(3) 如果上面两种方法都不好使的时候,可以考虑用代码去识别

3.1 如果是Java的应用程序的话

Properties props = System.getProperties();
String bits=String.valueOf(props.get("sun.arch.data.model")); 

sun.arch.data.model 有32,64或者unknown的返回值,分别对应不同的应该程序的位数。

3.2 如果是C/C++,C#的应用程序的话,我们可用PowerShell脚本

$width = [System.Runtime.InterOpServices.Marshal]::SizeOf([System.IntPtr])
if($width -eq 4){
    # 32 bit
}else if($width -eq 8){
	# 64 bit
}







VS2010 如何创建64bit应用程序

VS2010新建的VC++项目默认的组件平台是32位 要将它编译为64位程序,按以下步骤: 1.点击“Win32”下拉框,打开“配置管理器” 2.点击...

win7/8(32/64bit)系统下使用STC-ISP的问题与解决方法(MSCOMM32.OCX)

STC-ISP是学习STC单片机过程中下载程序的软件,目前大多数计算机爱好者的计算机系统都是window7/window8(32/64bit),在使用这款软件的过程中会遇到很多问题。这里我通过网络搜集...

window7(64bit)环境下安装基于TensorFlow后端的Keras 教程

window7(64bit)环境下安装基于TensorFlow后端的Keras 教程(CPU版)本教程是基于windows7 64位系统 使用anaconda的方法安装TensorFlow,并且安装...

Window 64bit环境Python3 + OpenCV3开发环境搭建

1. Python3的安装可直接到https://www.python.org/下载 1)点击主页Downloads下的Windows 2)64位电脑下载Windows X86-64 execut...

【Python基础】--Pickle/函数默认参数/函数的参数*args/Bytes<=>str/32-64bit/bytes对象

Pickle >>> import pickle >>> my_list = [1, 2, 3, 'haha', ['and', 'or']] >>> pickle_file = open('my_l...
  • waldmer
  • waldmer
  • 2016年11月15日 08:24
  • 688

关于安装CUDA环境的一些总结(vs2010+cuda5.5)[32/64bit均有]

由于实验室的需要,最近要装CUDA的东西,但是由于从来没有接触过,在开始的时候搞的挺纠结的,导致搞了四五天都没搞好,各种问题,主要在于硬件环境对于VS的CUDA的编程环境的影响。因为我自己的笔记本是6...

Ubuntu 12.04 64bit 无法安装ia32-libs 解决方法

错误信息: Html代码   junior@mediacenter:~$ sudo apt-get install ia32-libs   Reading package l...

win8 32/64bit VS2012 OpenCV 2.4.9 环境配置(win7 win10通用)

win8 32/64bit VS2012 OpenCV 2.4.9 环境配置 资料下载: OpenCV 2.4.9下载地址:http://sourceforge.net/projects/o...

在64bit Win10中的Ubuntu的Bash上安装Python及应用

Win10 Ubuntu Bash Python

Ubuntu 14.04 64bit上安装Intel官方集显更新驱动程序

说实在的,玩Linux现在唯一不爽的就是几个地方,网银支付,显卡
  • tao_627
  • tao_627
  • 2014年05月18日 20:13
  • 8500
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:如何在Window 64bit系统上面区分此应用程序是32bit还是64bit的呢?
举报原因:
原因补充:

(最多只允许输入30个字)