2014-10-09 54 views
0

我无法确定如何确定安装在可移动/从属驱动器上的Windows版本。在我的搜索中,我发现了DriveInfo类,它有一些整洁的东西,但没有告诉我该驱动器是XP还是Vista或更高版本(我需要知道这一点,因为它们具有不同的目录结构,并且我想自动化该过程备份他们的数据)。如何确定安装在可移动驱动器上的Windows版本

我必须以某种方式访问​​驱动器的注册表吗?我想避免,如果可能的,因为它的复杂,并在这一天我只是想这样做(蹩脚的伪代码)的末尾:

如果drive.has(XP),那么

其他

结束如果

任何帮助将不胜感激。谢谢。

回答

2

的另一种方法,以确定操作系统版本是记录在MSDN页"Getting the System Version"上:

要获取操作系统的完整版本号,则调用系统DLL之一GetFileVersionInfo函数,例如作为Kernel32.dll,然后调用VerQueryValue以获取文件版本信息的\ StringFileInfo \ ProductVersion子块。

幸运的是,这对离线实例和运行实例都有效。唯一真正的复杂情况是,如果您需要应对系统文件夹被赋予非标准名称的可能性。

相关问题