信不信由你,我的安装程序太旧了,它没有选择检测64位版本的Windows.
是否有Windows DLL调用或(甚至更好)一个环境变量,可以为Windows XP和Windows Vista提供该信息?
一种可能的解决方
我看到维基百科声称64位版本的Windows XP和Windows Vista都有一个独特的环境变量:%ProgramW6432%所以我猜测在32位Windows上它是空的.
此变量指向Program Files目录,该目录存储Windows和其他所有已安装的程序.英语系统的默认设置是C:\Program Files.在64位版本的Windows(XP,2003,Vista)中,还有%ProgramFiles(x86)%默认值C:\Program Files (x86)和%ProgramW6432%默认值C:\Program Files.在%ProgramFiles%本身取决于请求该环境变量中的进程是否为本身的32位或64位(这是由Windows的上-Windows 64位重定向引起的).
我正在尝试检索环境变量以检测系统是32位还是64位.但是在64位服务器上,环境变量%processor_architecture%正在返回x86而不是AMD64.
有没有人对此有任何线索?
我想知道操作系统类型,意思是64位操作系统或32位操作系统.但我得到了32位/ 64位可执行文件的不同响应,它获取了有关操作系统的系统属性
我从系统属性获取详细信息.我有64位机器和操作系统Windows 8.1 X64
"OS Architecture : " + System.getProperty("os.arch"));
"OS Name : " + System.getProperty("os.name"));
"OS Version : " + System.getProperty("os.version")
"Data Model : " + System.getProperty("sun.arch.data.model"));
Run Code Online (Sandbox Code Playgroud)
操作系统架构:amd64
操作系统名称:Windows 8
操作系统版本:6.2 amd64
数据模型:64
操作系统架构:x86
操作系统名称:Windows 8
操作系统版本:6.2 x86
数据模型:32
如何获得OS实际位类型?
是否有可能在java中检测处理器架构?像x86或sun SPARC等?如果是这样,我该怎么做呢?