`

搞定Windows的版本号

阅读更多

我们有一个用InstallShield制作的安装器, 在vista,Windows7上表现的不好, 存在一些问题.

也因此,我们的客户希望我么做一个"支持的操作系统的判断".

具体到windows这里就是: win2000,xp,WinServer2003这三个版本正常安装, 其他的windows版本则可能存在问题.

 

Java的System.getProperties() 方法的javadoc上有一个列表,列出了他支持对哪些系统属性的查询.

其中比较有用的是下面这三个.

 

System.out.println("OS name:    " + System.getProperty("os.name"));
System.out.println("OS arch:    " + System.getProperty("os.arch"));
System.out.println("OS version: " + System.getProperty("os.version"));
 

剩下的工作就是解析这些返回值,分别对应什么操作系统了.

 

msdn上面有这样一个链接:Operating System Version 上面的内容是这样的:

 

Operating system Version number
Windows 7 6.1
Windows Server 2008 R2 6.1
Windows Server 2008 6.0
Windows Vista 6.0
Windows Server 2003 R2 5.2
Windows Server 2003 5.2
Windows XP 5.1
Windows 2000 5.0

 

 

如果msdn里面写的东西, 100%正确的话, 那么问题到这里也就结束了,

可问题偏偏不是这样......

 

下面这两个链接是wikipedia上面关于windows的链接:

Microsoft_Windows

Timeline_of_Microsoft_Windows

 

里面就有一个例外, 64bit的XP的version number是5.2, 跟2003的一样,

wikipedia上面关于这一点的原因是:

Windows_XP_Professional_x64_Edition是在win2003之后开发的, 他使用的codebase是2003的.

也因此, 在使用前述的java代码获得它的os.name时, 得到的也是2003, 而非64位的bit.

不过还好, 我们的代码是对2003与xp一视同仁的, 不用具体区分.

 

 

从这一现象可以看出, 微软认为这个事, 不是一个事关紧要的问题.......

 

 

另外:

C#里面可以写下面的代码,他得到的信息比java丰富, 有service pack等信息.

 

OperatingSystem os = Environment.OSVersion;
// Display the value of OperatingSystem.VersionString. By default, this is
// the same value as OperatingSystem.ToString.
Console.WriteLine("This operating system is {0}", os.VersionString);
 

同时C#里面也有类:System.Version

对他可以直接应用lessThan(), greaterThan()方法.

分享到:
评论
1 楼 wjason 2010-06-28  
dos命令:systeminfo, 可以查看系统版本等信息

相关推荐

    PS不能读取系统剪切板的简单解决办法

     注意上面的版本号,Version 10.0 对应 Photoshop CS3,CS2对应 9.0,CS对应8.0,Photoshop 7对应7.0” 上面的资源里就是这样4种版本的,具体意思不懂,大虾可以在评论里帮忙解惑一下。 后续版本应该也就是这样修改...

    java论坛一键搭建Easyjsprun! v6.0.1 GBK For windows 110530.zip

    快速 - 您无需担心如何安装配置服务器环境,只需运行双击鼠标运行安装程序,一切就都已搞定。 小巧 - EasyJspRun! 一键搭建集成了Apache、Tomcat、Mysql和JspRun! 论坛程序和数据库,大小不到80MB,一安装即拥有了...

    windows xp多用户termsrv.dll(2055版)

    你完全可行,我们只要2055版中的termsrv.dll替换掉正式版本中的termsrv.dll文件就可搞定它了。 那么我们首先要准备一个2055版SP2中的termsrv.dll文件。 下载地址:http://download.csdn.net/source/2562899 二、...

    java论坛一键搭建Easyjsprun! v6.0.1 UFT-8 For windows 110530.zip

    快速 - 您无需担心如何安装配置服务器环境,只需运行双击鼠标运行安装程序,一切就都已搞定。 小巧 - EasyJspRun! 一键搭建集成了Apache、Tomcat、Mysql和JspRun! 论坛程序和数据库,大小不到80MB,一安装即拥有了...

    squid包含htpasswd.exe

     visible_hostname 机器名(随便起) 这么一行,就搞定了。  示例:visible_hostname supersrv #将hostname设置为supersrv  至此,可以保存squid.conf并且退出文本编辑器了,简单的Squid for Windows的配置...

    随手记 v9.4.65

    随手记,理财第一步!源自金蝶,专业又好用。...8、手机、网站、Windows 8版本,多设备一键同步记账;可以帮您把分散在多个手机、网站、电脑上的数据融合在一起,同步操作由您完全控制,不用担心数据隐私。

    OEM-DIY 品牌自己做 5.0(安装版)

    版本号直接升至4.0。 <br/> 向导视图使用方法:运行Guide.exe(或在程序后加"-guide"参数),软件将在完成时提示是否  在注册表中加入系统启动时运行的选择,这样Ghost系统恢复后即可自动运行,进行 OEM设置...

    OEM-DIY 品牌自己做 5.0(压缩版)

    版本号直接升至4.0。 <br/> 向导视图使用方法:运行Guide.exe(或在程序后加"-guide"参数),软件将在完成时提示是否  在注册表中加入系统启动时运行的选择,这样Ghost系统恢复后即可自动运行,进行 OEM设置...

    dameware远程控制

    双击“Browser”框中的“Properties”项,在右侧窗口标签页栏中就显示出远程客户机的软、硬件配置信息(如图),包括远端时间、Windows版本信息、硬件配置信息、显示适配器信息、环境变量、网络配置信息和客户机所...

    ChipGeniusUSB设备芯片型号检测工具

    1.修正英文界面版本号显示为2.64的小bug 2.增加繁体中文语言界面 V2.70 1.改进了检测算法,结果更加准确,增强了实用性 2.修正了一些极小的细节问题 3.新增大量国外存储设备识别信息 V2.64 1.修正未分区的移动硬盘...

    chipenius芯片精灵v3.01

    1.修正英文界面版本号显示为2.64的小bug 2.增加繁体中文语言界面 V2.70 1.改进了检测算法,结果更加准确,增强了实用性 2.修正了一些极小的细节问题 3.新增大量国外存储设备识别信息 V2.64 1.修正未分区的移动硬盘...

    基于python实现的智慧场馆自动预约系统源码+部署操作说明.zip

    采用如下命令安装 `selenium`,支持 2.48.0 及以上版本: ```python pip3 install selenium==2.48.0 ``` numpy Pillow opencv 基本用法 1. 将 `config.sample.ini` 文件重命名为 `config0.ini` ,如果需要...

    TortoiseSVN客户端程序

    这样,就算你在昏天黑地的改了几个月后老板说不要了,还是按照过去那样,你也不会抓狂,简单的恢复版本操作就搞定一切。 2.2、什么是 Subversion Subversion是一个自由/开源版本控制系统,它管理文件和目录可以超越...

    chipgenius芯片精灵

    1.修正英文界面版本号显示为2.64的小bug 2.增加繁体中文语言界面 V2.70 1.改进了检测算法,结果更加准确,增强了实用性 2.修正了一些极小的细节问题 3.新增大量国外存储设备识别信息 V2.64 1.修正未分区的移动硬盘...

    2009最新U盘主控芯片查询

    1.修正英文界面版本号显示为2.64的小bug 2.增加繁体中文语言界面 V2.70 1.改进了检测算法,结果更加准确,增强了实用性 2.修正了一些极小的细节问题 3.新增大量国外存储设备识别信息 V2.64 1.修正未分区的移动硬盘...

    DameWare.NT 8.0.0.102程序及破解补丁

    双击“Browser”框中的“Properties”项,在右侧窗口标签页栏中就显示出远程客户机的软、硬件配置信息(如图),包括远端时间、Windows版本信息、硬件配置信息、显示适配器信息、环境变量、网络配置信息和客户机所...

    ChipGenius—USB设备芯片型号检测工具

    1.修正英文界面版本号显示为2.64的小bug 2.增加繁体中文语言界面 V2.70 1.改进了检测算法,结果更加准确,增强了实用性 2.修正了一些极小的细节问题 3.新增大量国外存储设备识别信息 V2.64 1.修正未分区的移动硬盘...

    chip genius v3.0

    1.修正英文界面版本号显示为2.64的小bug 2.增加繁体中文语言界面 V2.70 1.改进了检测算法,结果更加准确,增强了实用性 2.修正了一些极小的细节问题 3.新增大量国外存储设备识别信息 V2.64 1.修正未分区的移动硬盘...

    USB 芯片检测工具 ChipGenius_3.0.0.1

    1.修正英文界面版本号显示为2.64的小bug 2.增加繁体中文语言界面 V2.70 1.改进了检测算法,结果更加准确,增强了实用性 2.修正了一些极小的细节问题 3.新增大量国外存储设备识别信息 V2.64 1.修正未分区的移动硬盘...

    USB设备芯片型号检测工具

    1.修正英文界面版本号显示为2.64的小bug 2.增加繁体中文语言界面 V2.70 1.改进了检测算法,结果更加准确,增强了实用性 2.修正了一些极小的细节问题 3.新增大量国外存储设备识别信息 V2.64 1.修正未分区的移动硬盘...

Global site tag (gtag.js) - Google Analytics