Windows 选择引导操作系统的编程方式?

Windows 选择引导操作系统的编程方式?,windows,boot,Windows,Boot,我正在搭建一个测试平台,在这里我正在测试跨多个Windows操作系统的设备连接。我不能在虚拟机中实现这一点(不能虚拟化对设备的访问),所以我有一个相当多的多引导系统。我有一个脚本来自动化这个过程,但我希望它继续并完成,选择下一个操作系统来启动并运行它的测试 一个问题是XP/2K3使用boot.ini,而Vista和更高版本使用BCDEdit。我可以手动有两个脚本。。。每个XP/2K3一个用于编辑boot.ini。然后是针对Vista系统的BCDEdit。但我不想硬编码每一个,尤其是如果我必须根据

我正在搭建一个测试平台,在这里我正在测试跨多个Windows操作系统的设备连接。我不能在虚拟机中实现这一点(不能虚拟化对设备的访问),所以我有一个相当多的多引导系统。我有一个脚本来自动化这个过程,但我希望它继续并完成,选择下一个操作系统来启动并运行它的测试

一个问题是XP/2K3使用boot.ini,而Vista和更高版本使用BCDEdit。我可以手动有两个脚本。。。每个XP/2K3一个用于编辑boot.ini。然后是针对Vista系统的BCDEdit。但我不想硬编码每一个,尤其是如果我必须根据测试条件改变顺序和/或关闭某些操作系统

BCDEdit还使用GUID作为它们的条目,这意味着在不同的机器上设置意味着确定下一个要转到哪个GUID


有什么想法或暗示吗?是否有任何实用程序可以帮助实现自动化?

我假设您的各种风格的窗口位于不同的分区上。并编写多个配置文件,每个配置文件都选择了一个操作系统作为默认操作系统。为/boot创建一个HD分区,并将GRUB配置存储在同一位置

您的每个Windows分区都需要安装,并将以前制作的EXT2分区装载为z:或其他内容。然后,您的测试脚本可以执行以下操作:

mountvol z: %bootvolname%
copy /y boot_to_vista_64.lst z:\boot\grub\menu.lst
shutdown -r -f -t 0 
%bootvolname%
有点复杂,是特定于操作系统的。您需要将它存储在每个操作系统分区中,您可以在该操作系统运行时通过执行
mountvol z:/l
来获取它