BATCH文件自动创建菜单 [英] Automatic menu creation for BATCH files

查看:207
本文介绍了BATCH文件自动创建菜单的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个我用来安装Windows的批处理文件。它给你一系列菜单导航到最终的WIM图像编号。然后使用imagex将映像应用于指定的驱动器盘符。我想使菜单动态,所以它只显示基于WIM文件中的条目。我目前有一个WIM文件,每个版本的windows从vista到server 2012.我想要删除一些图像,所以它更精简,但我不想重建安装程序,因为它是一个痛苦的对接。我想要一些帮助



我想到的一件事,但我不知道如何实现它是读取图像名称,并在其尊重的菜单



如何使菜单动态?



对于任何其他提示或提示,请转到



https://github.com/elliot-labs / WinInstaller



以下是当前的安装批处理文件:

 :start 
@echo off
cls
cd / d%〜dp0

rem设置工作目录。




goto菜单





:菜单
cls
set selection =
cls
echo 1. Windows Server
echo 2. Windows Client
set / p selection =请选择您想要的操作系统类型[ 1或2]:
如果%选择%EQU 1 goto服务器
如果选择%EQU 2 goto客户端


:服务器
cls
set selection =
echo 1. Server 2008(x86)
echo 2. Server 2012(x64)
set / p selection =请选择您想要的操作系统[1或2]:
如果%选择%EQU 1 goto 2008
如果%选择%EQU 2 goto 2012


:客户端
cls
set selection =
echo 1. Windows 8
echo 2. Windows 7
echo 3. Windows Vista
set / p selection =请选择您想要的操作系统[1,2或3]:
如果%选择%EQU 1 goto 8
如果%选择%EQU 2 goto 7
如果%选择%EQU 3 goto Vista



:2008
cls
set selection =
echo 1.服务器标准
echo 2.服务器企业
echo 3. Serv数据中心
echo 4.服务器标准内核(无GUI)
回显5.服务器企业核心(无GUI)
回显6.服务器数据中心(无GUI)
设置/ p selection =请选择您想要的操作系统类型[1-6]:
如果%选择%EQU 1 goto i19
如果%选择%EQU 2 goto i18
如果选择%EQU 3 goto i17
如果%选择%EQU 4 goto i16
如果%选择%EQU 5 goto i15
如果%选择%EQU 6 goto i14

:2012
cls
set selection =
echo全部是64位(x64)
echo 1.服务器标准内核(无GUI)
echo 2.服务器标准
echo 3.服务器数据中心核心(无GUI)
echo 4.服务器数据中心
set / p selection =请选择您想要的操作系统类型[1-4]:
如果选择% %EQU 1 goto i23
如果%选择%EQU 2 goto i22
如果%选择%EQU 3 goto i21
如果%选择%EQU 4 goto i20



:8
cls
set selection =
echo 1. Windows 8 x86
echo 2. Windows 8 Pro x86
echo 3. Windows 8 x64
回声4. Windows 8 Pro x64
set / p selection =请选择您想要的操作系统类型[1-4]:
如果选择%EQU 1 goto i10
如果%选择%EQU 2 goto i11
如果%选择%EQU 3 goto i12
如果%选择%EQU 4 goto i13


:7
cls
set选择=
回声1. Windows 7入门x86
回声2. Windows 7 Home Basic x86
回声3. Windows 7家庭高级版x86
回声4. Windows 7 Professional x86
echo 5. Windows 7 Ultimate x86
echo 6. Windows 7 Home Basic x64
echo 7. Windows 7 Home Premium x64
echo 8. Windows 7 Professional x64
echo 9 Windows 7 Ultimate x64
set / p selection =请选择您想要的操作系统类型[1-9]:
如果%选择%EQU 1 goto i5
如果%选择%EQU 2 goto i4
如果%选择%EQU 3 goto i3
如果%选择%EQU 4 goto i2
如果%选择%EQU 5 goto i1
如果%选择%EQU 6 goto i9
如果%选择%EQU 7 goto i8
如果%选择%EQU 8 goto i7
如果%选择%EQU 9 goto i6

:Vista
cls
set selection =
echo 1. Windows Vista Starter x86
echo 2. Windows Vista Business N x86
echo 3. Windows Vista Home Basic N x86
echo 4. Windows Vista Ultimate x86
echo 5. Windows Vista Home Premium x86
回声6. Windows Vista Home Basic x86
回声7. Windows Vista Business x86
回声8. Windows Vista Ultiamte x64
回声9. Windows Vista Home Premium x64
回声10. Windows Vista Home Basic x64
回声11. Windows Vista Vista Business x64
set / p选择=请选择您想要的操作系统类型[1-11]:
如果%选择%EQU 1 goto i24
如果%选择%EQU 2 goto i25
如果%选择%EQU 3 goto i26
如果%选择%EQU 4 goto i27
如果%选择%EQU 5 goto i28
如果%选择%EQU 6 goto i29
如果%选择%EQU 7 goto i30
如果%选择%EQU 8 goto i31
如果%选择%EQU 9 goto i32
如果%选择%EQU 10 goto i33
如果%选择%EQU 11 goto i34




:i1
set index = 1
goto dest
:i2
set index = 2
goto dest
:i3
set index = 3
goto dest
:i4
set index = 4
goto dest
:i5
set index = 5
goto dest
:i6
set index = 6
goto dest
:i7
set index = 7
goto dest
:i8
set index = 8
goto dest
:i9
set index = 9
goto dest
:i10
set index = 10
goto dest
:i11
set index = 11
goto dest
:i12
set index = 12
goto dest
:i13
set index = 13
goto dest
:i14
set index = 14
goto dest
:i15
set index = 15
goto dest
:i16
set index = 16
goto dest
:i17
set index = 17
goto dest
:i18
set index = 18
goto dest
:i19
set index = 19
goto dest
:i20
set index = 20
goto dest
:i21
set index = 21
goto dest
:i22
set index = 22
goto dest
:i23
set index = 23
goto dest
:i24
set index = 24
goto des t
:i25
set index = 25
goto dest
:i26
set index = 26
goto dest
:i27
set index = 27
goto dest
:i28
set index = 28
goto dest
:i29
set index = 29
goto dest
:i30
set index = 30
goto dest
:i31
set index = 31
goto dest
:i32
set index = 32
goto dest
:i33
set index = 33
goto dest
:i34
set index = 34
goto dest



:安装
imagex / apply Y:\WIMs\install.wim%index%%dest%:
pause
goto Boot




:dest
cls
echo请输入您要安装的驱动器号。
set / p dest =请选择你想要的字母[AZ]:
goto install




:Boot
cls
echo这将运行EasyBCD,从中可以安装引导加载程序。
暂停
Y:\Programs\EasyBCD\EasyBCD.exe
cls
echo完成安装!
暂停

从Windows 7 SP1 x86的imagex输出安装dvd install.wim: p>

 用于Windows的ImageX工具
版权所有(C)Microsoft Corp.保留所有权利。
版本:6.1.7600.16385

WIM信息:
----------------
路径:B:\ install.wim
GUID:{03825cb3-3e7f-4798-81f4-9ca6ef277819}
图像数:5
压缩:LZX
零件号:1/1
属性:0xc
诚信信息
相对路径路口


可用图像选择:
--------------- ---------
< WIM>
< TOTALBYTES> 2249000978< / TOTALBYTES>
< IMAGE INDEX =1>
< DIRCOUNT> 9107< / DIRCOUNT>
< FILECOUNT> 46905< / FILECOUNT>
< TOTALBYTES> 8074968070< / TOTALBYTES>
< CREATIONTIME>
< HIGHPART> 0x01CB8901< / HIGHPART>
< LOWPART> 0xEF63352E< / LOWPART>
< / CREATIONTIME>
< LASTMODIFICATIONTIME>
< HIGHPART> 0x01CBF8BC< / HIGHPART>
< LOWPART> 0xBB84D710< / LOWPART>
< / LASTMODIFICATIONTIME>
< WINDOWS>
< ARCH> 0< / ARCH>
< PRODUCTNAME> Microsoftr Windowsr操作系统< / PRODUCTNAME>
< EDITIONID> Starter< / EDITIONID>
< INSTALLATIONTYPE>客户端< / INSTALLATIONTYPE>
< HAL> acpiapic< / HAL>
< PRODUCTTYPE> WinNT< / PRODUCTTYPE>
< PRODUCTSUITE>终端服务器< / PRODUCTSUITE>
< LANGUAGES>
< LANGUAGE> en-US< / LANGUAGE>
< DEFAULT> en-US< / DEFAULT>
< / LANGUAGES>
< VERSION>
< MAJOR> 6< / MAJOR>
< MINOR> 1< / MINOR>
< BUILD> 7601< / BUILD>
< SPBUILD> 17514< / SPBUILD>
< SPLEVEL> 1< / SPLEVEL>
< / VERSION>
< SYSTEMROOT> WINDOWS< / SYSTEMROOT>
< / WINDOWS>
< NAME> Windows 7 STARTER< / NAME>
< DESCRIPTION> Windows 7 STARTER< / DESCRIPTION>
< FLAGS> Starter< / FLAGS>
< HARDLINKBYTES> 3037806302< / HARDLINKBYTES>
< DISPLAYNAME> Windows 7入门者< / DISPLAYNAME>
< DISPLAYDESCRIPTION> Windows 7 Starter< / DISPLAYDESCRIPTION>
< / IMAGE>
< IMAGE INDEX =2>
< DIRCOUNT> 9140< / DIRCOUNT>
< FILECOUNT> 47108< / FILECOUNT>
< TOTALBYTES> 8127590116< / TOTALBYTES>
< CREATIONTIME>
< HIGHPART> 0x01CB8901< / HIGHPART>
< LOWPART> 0xEF63352E< / LOWPART>
< / CREATIONTIME>
< LASTMODIFICATIONTIME>
< HIGHPART> 0x01CBF8BC< / HIGHPART>
< LOWPART> 0xD91B65FA< / LOWPART>
< / LASTMODIFICATIONTIME>
< WINDOWS>
< ARCH> 0< / ARCH>
< PRODUCTNAME> Microsoftr Windowsr操作系统< / PRODUCTNAME>
< EDITIONID> HomeBasic< / EDITIONID>
< INSTALLATIONTYPE>客户端< / INSTALLATIONTYPE>
< HAL> acpiapic< / HAL>
< PRODUCTTYPE> WinNT< / PRODUCTTYPE>
< PRODUCTSUITE>终端服务器< / PRODUCTSUITE>
< LANGUAGES>
< LANGUAGE> en-US< / LANGUAGE>
< DEFAULT> en-US< / DEFAULT>
< / LANGUAGES>
< VERSION>
< MAJOR> 6< / MAJOR>
< MINOR> 1< / MINOR>
< BUILD> 7601< / BUILD>
< SPBUILD> 17514< / SPBUILD>
< SPLEVEL> 1< / SPLEVEL>
< / VERSION>
< SYSTEMROOT> WINDOWS< / SYSTEMROOT>
< / WINDOWS>
< NAME> Windows 7 HOMEBASIC< / NAME>
< DESCRIPTION> Windows 7 HOMEBASIC< / DESCRIPTION>
< FLAGS> HomeBasic< / FLAGS>
< HARDLINKBYTES> 3069177344< / HARDLINKBYTES>
< DISPLAYNAME> Windows 7 Home Basic< / DISPLAYNAME>
< DISPLAYDESCRIPTION> Windows 7 Home Basic< / DISPLAYDESCRIPTION>
< / IMAGE>
< IMAGE INDEX =3>
< DIRCOUNT> 9357< / DIRCOUNT>
< FILECOUNT> 48117< / FILECOUNT>
< TOTALBYTES> 8569006173< / TOTALBYTES>
< CREATIONTIME>
< HIGHPART> 0x01CB8901< / HIGHPART>
< LOWPART> 0xEF63352E< / LOWPART>
< / CREATIONTIME>
< LASTMODIFICATIONTIME>
< HIGHPART> 0x01CBF8BC< / HIGHPART>
< LOWPART> 0xF5B79DFA< / LOWPART>
< / LASTMODIFICATIONTIME>
< WINDOWS>
< ARCH> 0< / ARCH>
< PRODUCTNAME> Microsoftr Windowsr操作系统< / PRODUCTNAME>
< EDITIONID> HomePremium< / EDITIONID>
< INSTALLATIONTYPE>客户端< / INSTALLATIONTYPE>
< HAL> acpiapic< / HAL>
< PRODUCTTYPE> WinNT< / PRODUCTTYPE>
< PRODUCTSUITE>终端服务器< / PRODUCTSUITE>
< LANGUAGES>
< LANGUAGE> en-US< / LANGUAGE>
< DEFAULT> en-US< / DEFAULT>
< / LANGUAGES>
< VERSION>
< MAJOR> 6< / MAJOR>
< MINOR> 1< / MINOR>
< BUILD> 7601< / BUILD>
< SPBUILD> 17514< / SPBUILD>
< SPLEVEL> 1< / SPLEVEL>
< / VERSION>
< SYSTEMROOT> WINDOWS< / SYSTEMROOT>
< / WINDOWS>
< NAME> Windows 7 HOMEPREMIUM< / NAME>
< DESCRIPTION> Windows 7 HOMEPREMIUM< / DESCRIPTION>
< FLAGS> HomePremium< / FLAGS>
< HARDLINKBYTES> 3448347246< / HARDLINKBYTES>
< DISPLAYNAME> Windows 7家庭高级版< / DISPLAYNAME>
< DISPLAYDESCRIPTION> Windows 7 Home Premium< / DISPLAYDESCRIPTION>
< / IMAGE>
< IMAGE INDEX =4>
< DIRCOUNT> 9414< / DIRCOUNT>
< FILECOUNT> 48560< / FILECOUNT>
< TOTALBYTES> 8450188760< / TOTALBYTES>
< CREATIONTIME>
< HIGHPART> 0x01CB8901< / HIGHPART>
< LOWPART> 0xEF63352E< / LOWPART>
< / CREATIONTIME>
< LASTMODIFICATIONTIME>
< HIGHPART> 0x01CBF8BD< / HIGHPART>
< LOWPART> 0x0FC1CCF2< / LOWPART>
< / LASTMODIFICATIONTIME>
< WINDOWS>
< ARCH> 0< / ARCH>
< PRODUCTNAME> Microsoftr Windowsr操作系统< / PRODUCTNAME>
< EDITIONID>专业< / EDITIONID>
< INSTALLATIONTYPE>客户端< / INSTALLATIONTYPE>
< HAL> acpiapic< / HAL>
< PRODUCTTYPE> WinNT< / PRODUCTTYPE>
< PRODUCTSUITE>终端服务器< / PRODUCTSUITE>
< LANGUAGES>
< LANGUAGE> en-US< / LANGUAGE>
< DEFAULT> en-US< / DEFAULT>
< / LANGUAGES>
< VERSION>
< MAJOR> 6< / MAJOR>
< MINOR> 1< / MINOR>
< BUILD> 7601< / BUILD>
< SPBUILD> 17514< / SPBUILD>
< SPLEVEL> 1< / SPLEVEL>
< / VERSION>
< SYSTEMROOT> WINDOWS< / SYSTEMROOT>
< / WINDOWS>
< NAME> Windows 7专业< / NAME>
< DESCRIPTION> Windows 7专业版< / DESCRIPTION>
< FLAGS> Professional< / FLAGS>
< HARDLINKBYTES> 3314667745< / HARDLINKBYTES>
< DISPLAYNAME> Windows 7 Professional< / DISPLAYNAME>
< DISPLAYDESCRIPTION> Windows 7 Professional< / DISPLAYDESCRIPTION>
< / IMAGE>
< IMAGE INDEX =5>
< DIRCOUNT> 9450< / DIRCOUNT>
< FILECOUNT> 48736< / FILECOUNT>
< TOTALBYTES> 8610128720< / TOTALBYTES>
< CREATIONTIME>
< HIGHPART> 0x01CB8901< / HIGHPART>
< LOWPART> 0xEF63352E< / LOWPART>
< / CREATIONTIME>
< LASTMODIFICATIONTIME>
< HIGHPART> 0x01CBF8BD< / HIGHPART>
< LOWPART> 0x20960638< / LOWPART>
< / LASTMODIFICATIONTIME>
< WINDOWS>
< ARCH> 0< / ARCH>
< PRODUCTNAME> Microsoftr Windowsr操作系统< / PRODUCTNAME>
< EDITIONID>终极< / EDITIONID>
< INSTALLATIONTYPE>客户端< / INSTALLATIONTYPE>
< HAL> acpiapic< / HAL>
< PRODUCTTYPE> WinNT< / PRODUCTTYPE>
< PRODUCTSUITE>终端服务器< / PRODUCTSUITE>
< LANGUAGES>
< LANGUAGE> en-US< / LANGUAGE>
< DEFAULT> en-US< / DEFAULT>
< / LANGUAGES>
< VERSION>
< MAJOR> 6< / MAJOR>
< MINOR> 1< / MINOR>
< BUILD> 7601< / BUILD>
< SPBUILD> 17514< / SPBUILD>
< SPLEVEL> 1< / SPLEVEL>
< / VERSION>
< SYSTEMROOT> WINDOWS< / SYSTEMROOT>
< / WINDOWS>
< NAME> Windows 7 ULTIMATE< / NAME>
< DESCRIPTION> Windows 7 ULTIMATE< / DESCRIPTION>
< FLAGS>终极< / FLAGS>
< HARDLINKBYTES> 3473147759< / HARDLINKBYTES>
< DISPLAYNAME> Windows 7 Ultimate< / DISPLAYNAME>
< DISPLAYDESCRIPTION> Windows 7 Ultimate< / DISPLAYDESCRIPTION>
< / IMAGE>
< / WIM>

以下是Windows 7 SP1 x64 WIM上的相同命令(imagex / info)

  B:\AIO> imagex / info B:\install.wim 

ImageX Tool for Windows
版权所有(C)微软公司保留所有权利。
版本:6.1.7600.16385

WIM信息:
----------------
路径:B:\ install.wim
GUID:{65caf905-5e50-4a42-900b-5e14084871e9}
图像数:4
压缩:LZX
零件号:1/1
属性:0xc
诚信信息
相对路径路口


可用图像选择:
--------------- ---------
< WIM>
< TOTALBYTES> 2954387497< / TOTALBYTES>
< IMAGE INDEX =1>
< DIRCOUNT> 13365< / DIRCOUNT>
< FILECOUNT> 64285< / FILECOUNT>
< TOTALBYTES> 11710161360< / TOTALBYTES>
< CREATIONTIME>
< HIGHPART> 0x01CB8936< / HIGHPART>
< LOWPART> 0x131F339A< / LOWPART>
< / CREATIONTIME>
< LASTMODIFICATIONTIME>
< HIGHPART> 0x01CBF8F0< / HIGHPART>
< LOWPART> 0x0027D0DC< / LOWPART>
< / LASTMODIFICATIONTIME>
< WINDOWS>
< ARCH> 9< / ARCH>
< PRODUCTNAME> Microsoftr Windowsr操作系统< / PRODUCTNAME>
< EDITIONID> HomeBasic< / EDITIONID>
< INSTALLATIONTYPE>客户端< / INSTALLATIONTYPE>
< HAL> acpiapic< / HAL>
< PRODUCTTYPE> WinNT< / PRODUCTTYPE>
< PRODUCTSUITE>终端服务器< / PRODUCTSUITE>
< LANGUAGES>
< LANGUAGE> en-US< / LANGUAGE>
< DEFAULT> en-US< / DEFAULT>
< / LANGUAGES>
< VERSION>
< MAJOR> 6< / MAJOR>
< MINOR> 1< / MINOR>
< BUILD> 7601< / BUILD>
< SPBUILD> 17514< / SPBUILD>
< SPLEVEL> 1< / SPLEVEL>
< / VERSION>
< SYSTEMROOT> WINDOWS< / SYSTEMROOT>
< / WINDOWS>
< NAME> Windows 7 HOMEBASIC< / NAME>
< DESCRIPTION> Windows 7 HOMEBASIC< / DESCRIPTION>
< FLAGS> HomeBasic< / FLAGS>
< HARDLINKBYTES> 4497873056< / HARDLINKBYTES>
< DISPLAYNAME> Windows 7 Home Basic< / DISPLAYNAME>
< DISPLAYDESCRIPTION> Windows 7 Home Basic< / DISPLAYDESCRIPTION>
< / IMAGE>
< IMAGE INDEX =2>
< DIRCOUNT> 13614< / DIRCOUNT>
< FILECOUNT> 65339< / FILECOUNT>
< TOTALBYTES> 12222587449< / TOTALBYTES>
< CREATIONTIME>
< HIGHPART> 0x01CB8936< / HIGHPART>
< LOWPART> 0x131F339A< / LOWPART>
< / CREATIONTIME>
< LASTMODIFICATIONTIME>
< HIGHPART> 0x01CBF8F0< / HIGHPART>
< LOWPART> 0x236D21C7< / LOWPART>
< / LASTMODIFICATIONTIME>
< WINDOWS>
< ARCH> 9< / ARCH>
< PRODUCTNAME> Microsoftr Windowsr操作系统< / PRODUCTNAME>
< EDITIONID> HomePremium< / EDITIONID>
< INSTALLATIONTYPE>客户端< / INSTALLATIONTYPE>
< HAL> acpiapic< / HAL>
< PRODUCTTYPE> WinNT< / PRODUCTTYPE>
< PRODUCTSUITE>终端服务器< / PRODUCTSUITE>
< LANGUAGES>
< LANGUAGE> en-US< / LANGUAGE>
< DEFAULT> en-US< / DEFAULT>
< / LANGUAGES>
< VERSION>
< MAJOR> 6< / MAJOR>
< MINOR> 1< / MINOR>
< BUILD> 7601< / BUILD>
< SPBUILD> 17514< / SPBUILD>
< SPLEVEL> 1< / SPLEVEL>
< / VERSION>
< SYSTEMROOT> WINDOWS< / SYSTEMROOT>
< / WINDOWS>
< NAME> Windows 7 HOMEPREMIUM< / NAME>
< DESCRIPTION> Windows 7 HOMEPREMIUM< / DESCRIPTION>
< FLAGS> HomePremium< / FLAGS>
&HARDINKBYTES> 4912986404< / HARDLINKBYTES>
< DISPLAYNAME> Windows 7 Home Premium< / DISPLAYNAME>
< DISPLAYDESCRIPTION> Windows 7 Home Premium< / DISPLAYDESCRIPTION>
< / IMAGE>
< IMAGE INDEX =3>
< DIRCOUNT> 13701< / DIRCOUNT>
< FILECOUNT> 65851< / FILECOUNT>
< TOTALBYTES> 12122886417< / TOTALBYTES>
< CREATIONTIME>
< HIGHPART> 0x01CB8936< / HIGHPART>
< LOWPART> 0x131F339A< / LOWPART>
< / CREATIONTIME>
< LASTMODIFICATIONTIME>
< HIGHPART> 0x01CBF8F0< / HIGHPART>
< LOWPART> 0x47C4A445< / LOWPART>
< / LASTMODIFICATIONTIME>
< WINDOWS>
< ARCH> 9< / ARCH>
< PRODUCTNAME> Microsoftr Windowsr操作系统< / PRODUCTNAME>
< EDITIONID>专业< / EDITIONID>
< INSTALLATIONTYPE>客户端< / INSTALLATIONTYPE>
< HAL> acpiapic< / HAL>
< PRODUCTTYPE> WinNT< / PRODUCTTYPE>
< PRODUCTSUITE>终端服务器< / PRODUCTSUITE>
< LANGUAGES>
< LANGUAGE> en-US< / LANGUAGE>
< DEFAULT> en-US< / DEFAULT>
< / LANGUAGES>
< VERSION>
< MAJOR> 6< / MAJOR>
< MINOR> 1< / MINOR>
< BUILD> 7601< / BUILD>
< SPBUILD> 17514< / SPBUILD>
< SPLEVEL> 1< / SPLEVEL>
< / VERSION>
< SYSTEMROOT> WINDOWS< / SYSTEMROOT>
< / WINDOWS>
< NAME> Windows 7专业< / NAME>
< DESCRIPTION> Windows 7专业版< / DESCRIPTION>
< FLAGS> Professional< / FLAGS>
< HARDLINKBYTES> 4786527097< / HARDLINKBYTES>
< DISPLAYNAME> Windows 7 Professional< / DISPLAYNAME>
< DISPLAYDESCRIPTION> Windows 7 Professional< / DISPLAYDESCRIPTION>
< / IMAGE>
< IMAGE INDEX =4>
< DIRCOUNT> 13737< / DIRCOUNT>
< FILECOUNT> 66029< / FILECOUNT>
< TOTALBYTES> 12285492779< / TOTALBYTES>
< CREATIONTIME>
< HIGHPART> 0x01CB8936< / HIGHPART>
< LOWPART> 0x131F339A< / LOWPART>
< / CREATIONTIME>
< LASTMODIFICATIONTIME>
< HIGHPART> 0x01CBF8F0< / HIGHPART>
< LOWPART> 0x6D7F6938< / LOWPART>
< / LASTMODIFICATIONTIME>
< WINDOWS>
< ARCH> 9< / ARCH>
< PRODUCTNAME> Microsoftr Windowsr操作系统< / PRODUCTNAME>
< EDITIONID>终极< / EDITIONID>
< INSTALLATIONTYPE>客户端< / INSTALLATIONTYPE>
< HAL> acpiapic< / HAL>
< PRODUCTTYPE> WinNT< / PRODUCTTYPE>
< PRODUCTSUITE>终端服务器< / PRODUCTSUITE>
< LANGUAGES>
< LANGUAGE> en-US< / LANGUAGE>
< DEFAULT> en-US< / DEFAULT>
< / LANGUAGES>
< VERSION>
< MAJOR> 6< / MAJOR>
< MINOR> 1< / MINOR>
< BUILD> 7601< / BUILD>
< SPBUILD> 17514< / SPBUILD>
< SPLEVEL> 1< / SPLEVEL>
< / VERSION>
< SYSTEMROOT> WINDOWS< / SYSTEMROOT>
< / WINDOWS>
< NAME> Windows 7 ULTIMATE< / NAME>
< DESCRIPTION> Windows 7 ULTIMATE< / DESCRIPTION>
< FLAGS>终极< / FLAGS>
< HARDLINKBYTES> 4947144081< / HARDLINKBYTES>
< DISPLAYNAME> Windows 7 Ultimate< / DISPLAYNAME>
< DISPLAYDESCRIPTION> Windows 7 Ultimate< / DISPLAYDESCRIPTION>
< / IMAGE>
< / WIM>

Imagex来自Windows 7的官方Microsoft自动安装工具包

解决方案

我已经看过每一个地方,然后是一些...我终于把批处理文件变成一个动态系统。



以下是代码:

 :start 
@echo off
cls
cd / d%〜dp0
goto setwiminfo

rem设置工作目录。 (重要的是这样做)

:setwiminfo
cls
echo请输入您选择的
set / p WIM = WIM文件的完整路径:
cls
echo路径集。
pause
imagex / info%WIM%|找到< NAME> >> Images.txt
goto dest

rem设置WIM所在的位置,并使wim中可用的图像列表。

:dest
cls
echo你想在哪里安装图像?
set / p dest =在这里输入驱动器号[A-Z]:
goto index

rem这将设置要应用该映像的目的地。 (酷提示:您可以申请到目录E.G. X:\dir\)
rem酷提示通常用于devolapement。

:index
echo:start>> Display.bat
echo @echo off>> Display.bat
echo cls>> Display.bat
echo cd / d%〜dp0>>> Display.bat
echo echo可用于安装的图像列表:>> Display.bat
echo echo *请注意名称左侧的图像编号*>> Display.bat
echo find / N< NAME> Images.txt>> Display.bat
echo pause>> Display.bat
echo del Images.txt>> Display.bat
echo exit>> Display.bat
start Display.bat
cls
set / p index =请指定要安装的图像数(名称):
goto install

rem这使另一个批处理文件在新窗口中显示索引信息。

:安装
echo这将把wim安装到你选择的目的地。
pause
cls
imagex / apply%WIM%%index%%dest%:
goto boot

rem将图像应用于所选驱动器(或选择的文件夹)。

:boot
回显EasyBCD可以从中安装引导加载程序。
Y:\Programs\EasyBCD\EasyBCD.exe
pause
goto cleanup

rem运行EasyBCD,因为我还没有集成bcdboot命令。 (即将推出)

:清理
del Display.bat
del Images.txt
goto选择

rem这个清理由脚本创建的文件。

:选择
cls
echo你要安装其他图像吗?
选项
如果%ERRORLEVEL%EQU 1 goto start
如果%ERRORLEVEL%EQU 2 goto end
echo错误请重试:(
pause
goto选择

rem如果用户想要应用另一个图像,则循环脚本

:end
cls
echo感谢您使用Elliot Labs安装程序!
echo对于功能请求,请发送电子邮件至elliot-labs@live.com
echo谢谢!
pause | echo按任意键退出...
退出


I have a batch file that I use to install windows. It gives you a series of menus to navigate to get to the final WIM image number. It then uses imagex to apply the image to the specified drive letter. I want to make the menu dynamic so it only shows entries based what is in the WIM file. I currently have a WIM file that has every edition of windows from vista to server 2012. I am wanting to strip some the images out so it is more streamlined but I don't want to rebuild the installer because it is a pain in the butt. I would like some help

One thing I thought of but I don't know how to implement is that it reads the image name and makes the menu for it in its respected place.

How do I make the Menu Dynamic?

For any other tips or hints please go to

https://github.com/elliot-labs/WinInstaller

Here is the current install batch file:

:start
@echo off
cls
cd /d %~dp0

rem Sets up the working directory.




goto Menu





:Menu
cls
set selection=
cls
echo 1. Windows Server
echo 2. Windows Client
set /p selection=Please chose which OS type you want [1 or 2]:
if %selection% EQU 1 goto Server
if %selection% EQU 2 goto Client


:Server
cls
set selection=
echo 1. Server 2008 (x86)
echo 2. Server 2012 (x64)
set /p selection=Please chose which OS you want [1 or 2]:
if %selection% EQU 1 goto 2008
if %selection% EQU 2 goto 2012


:Client
cls
set selection=
echo 1. Windows 8
echo 2. Windows 7
echo 3. Windows Vista
set /p selection=Please chose which OS you want [1, 2 or 3]:
if %selection% EQU 1 goto 8
if %selection% EQU 2 goto 7
if %selection% EQU 3 goto Vista



:2008
cls
set selection=
echo 1. Server Standard
echo 2. Server Enterprise
echo 3. Server Data Center
echo 4. Server Standard Core (no GUI)
echo 5. Server Enterprise Core (no GUI)
echo 6. Server Data Center (no GUI)
set /p selection=Please chose which OS type you want [1-6]:
if %selection% EQU 1 goto i19
if %selection% EQU 2 goto i18
if %selection% EQU 3 goto i17
if %selection% EQU 4 goto i16
if %selection% EQU 5 goto i15
if %selection% EQU 6 goto i14

:2012
cls
set selection=
echo All are 64 bit (x64)
echo 1. Server Standard Core (no GUI)
echo 2. Server Standard
echo 3. Server Data Center Core (no GUI)
echo 4. Server Data Center
set /p selection=Please chose which OS type you want [1-4]:
if %selection% EQU 1 goto i23
if %selection% EQU 2 goto i22
if %selection% EQU 3 goto i21
if %selection% EQU 4 goto i20



:8
cls
set selection=
echo 1. Windows 8 x86
echo 2. Windows 8 Pro x86
echo 3. Windows 8 x64
echo 4. Windows 8 Pro x64
set /p selection=Please chose which OS type you want [1-4]:
if %selection% EQU 1 goto i10
if %selection% EQU 2 goto i11
if %selection% EQU 3 goto i12
if %selection% EQU 4 goto i13


:7
cls
set selection=
echo 1. Windows 7 Starter x86
echo 2. Windows 7 Home Basic x86
echo 3. Windows 7 Home Premium x86
echo 4. Windows 7 Professional x86
echo 5. Windows 7 Ultimate x86
echo 6. Windows 7 Home Basic x64
echo 7. Windows 7 Home Premium x64
echo 8. Windows 7 Professional x64
echo 9. Windows 7 Ultimate x64
set /p selection=Please chose which OS type you want [1-9]:
if %selection% EQU 1 goto i5
if %selection% EQU 2 goto i4
if %selection% EQU 3 goto i3
if %selection% EQU 4 goto i2
if %selection% EQU 5 goto i1
if %selection% EQU 6 goto i9
if %selection% EQU 7 goto i8
if %selection% EQU 8 goto i7
if %selection% EQU 9 goto i6

:Vista
cls
set selection=
echo 1.  Windows Vista Starter x86
echo 2.  Windows Vista Business N x86
echo 3.  Windows Vista Home Basic N x86
echo 4.  Windows Vista Ultimate x86
echo 5.  Windows Vista Home Premium x86
echo 6.  Windows Vista Home Basic x86
echo 7.  Windows Vista Business x86
echo 8.  Windows Vista Ultiamte x64
echo 9.  Windows Vista Home Premium x64
echo 10. Windows Vista Home Basic x64
echo 11. Windows Vista Vista Business x64
set /p selection=Please chose which OS type you want [1-11]:
if %selection% EQU 1 goto i24
if %selection% EQU 2 goto i25
if %selection% EQU 3 goto i26
if %selection% EQU 4 goto i27
if %selection% EQU 5 goto i28
if %selection% EQU 6 goto i29
if %selection% EQU 7 goto i30
if %selection% EQU 8 goto i31
if %selection% EQU 9 goto i32
if %selection% EQU 10 goto i33
if %selection% EQU 11 goto i34




:i1
set index=1
goto dest
:i2
set index=2
goto dest
:i3
set index=3
goto dest
:i4
set index=4
goto dest
:i5
set index=5
goto dest
:i6
set index=6
goto dest
:i7
set index=7
goto dest
:i8
set index=8
goto dest
:i9
set index=9
goto dest
:i10
set index=10
goto dest
:i11
set index=11
goto dest
:i12
set index=12
goto dest
:i13
set index=13
goto dest
:i14
set index=14
goto dest
:i15
set index=15
goto dest
:i16
set index=16
goto dest
:i17
set index=17
goto dest
:i18
set index=18
goto dest
:i19
set index=19
goto dest
:i20
set index=20
goto dest
:i21
set index=21
goto dest
:i22
set index=22
goto dest
:i23
set index=23
goto dest
:i24
set index=24
goto dest
:i25
set index=25
goto dest
:i26
set index=26
goto dest
:i27
set index=27
goto dest
:i28
set index=28
goto dest
:i29
set index=29
goto dest
:i30
set index=30
goto dest
:i31
set index=31
goto dest
:i32
set index=32
goto dest
:i33
set index=33
goto dest
:i34
set index=34
goto dest



:install
imagex /apply Y:\WIMs\install.wim %index% %dest%:
pause
goto Boot




:dest
cls
echo Please enter the drive letter you want to install to.
set /p dest=Please chose which letter you want [A-Z]:
goto install




:Boot
cls
echo This will run EasyBCD from which you can install the Boot loader.
pause
Y:\Programs\EasyBCD\EasyBCD.exe
cls
echo Instalation complete!
pause

Output from imagex from Windows 7 SP1 x86 install dvd install.wim:

ImageX Tool for Windows
Copyright (C) Microsoft Corp. All rights reserved.
Version: 6.1.7600.16385

WIM Information:
----------------
Path:        B:\install.wim
GUID:        {03825cb3-3e7f-4798-81f4-9ca6ef277819}
Image Count: 5
Compression: LZX
Part Number: 1/1
Attributes:  0xc
             Integrity info
             Relative path junction


Available Image Choices:
------------------------
<WIM>
  <TOTALBYTES>2249000978</TOTALBYTES>
  <IMAGE INDEX="1">
    <DIRCOUNT>9107</DIRCOUNT>
    <FILECOUNT>46905</FILECOUNT>
    <TOTALBYTES>8074968070</TOTALBYTES>
    <CREATIONTIME>
      <HIGHPART>0x01CB8901</HIGHPART>
      <LOWPART>0xEF63352E</LOWPART>
    </CREATIONTIME>
    <LASTMODIFICATIONTIME>
      <HIGHPART>0x01CBF8BC</HIGHPART>
      <LOWPART>0xBB84D710</LOWPART>
    </LASTMODIFICATIONTIME>
    <WINDOWS>
      <ARCH>0</ARCH>
      <PRODUCTNAME>Microsoftr Windowsr Operating System</PRODUCTNAME>
      <EDITIONID>Starter</EDITIONID>
      <INSTALLATIONTYPE>Client</INSTALLATIONTYPE>
      <HAL>acpiapic</HAL>
      <PRODUCTTYPE>WinNT</PRODUCTTYPE>
      <PRODUCTSUITE>Terminal Server</PRODUCTSUITE>
      <LANGUAGES>
        <LANGUAGE>en-US</LANGUAGE>
        <DEFAULT>en-US</DEFAULT>
      </LANGUAGES>
      <VERSION>
        <MAJOR>6</MAJOR>
        <MINOR>1</MINOR>
        <BUILD>7601</BUILD>
        <SPBUILD>17514</SPBUILD>
        <SPLEVEL>1</SPLEVEL>
      </VERSION>
      <SYSTEMROOT>WINDOWS</SYSTEMROOT>
    </WINDOWS>
    <NAME>Windows 7 STARTER</NAME>
    <DESCRIPTION>Windows 7 STARTER</DESCRIPTION>
    <FLAGS>Starter</FLAGS>
    <HARDLINKBYTES>3037806302</HARDLINKBYTES>
    <DISPLAYNAME>Windows 7 Starter</DISPLAYNAME>
    <DISPLAYDESCRIPTION>Windows 7 Starter</DISPLAYDESCRIPTION>
  </IMAGE>
  <IMAGE INDEX="2">
    <DIRCOUNT>9140</DIRCOUNT>
    <FILECOUNT>47108</FILECOUNT>
    <TOTALBYTES>8127590116</TOTALBYTES>
    <CREATIONTIME>
      <HIGHPART>0x01CB8901</HIGHPART>
      <LOWPART>0xEF63352E</LOWPART>
    </CREATIONTIME>
    <LASTMODIFICATIONTIME>
      <HIGHPART>0x01CBF8BC</HIGHPART>
      <LOWPART>0xD91B65FA</LOWPART>
    </LASTMODIFICATIONTIME>
    <WINDOWS>
      <ARCH>0</ARCH>
      <PRODUCTNAME>Microsoftr Windowsr Operating System</PRODUCTNAME>
      <EDITIONID>HomeBasic</EDITIONID>
      <INSTALLATIONTYPE>Client</INSTALLATIONTYPE>
      <HAL>acpiapic</HAL>
      <PRODUCTTYPE>WinNT</PRODUCTTYPE>
      <PRODUCTSUITE>Terminal Server</PRODUCTSUITE>
      <LANGUAGES>
        <LANGUAGE>en-US</LANGUAGE>
        <DEFAULT>en-US</DEFAULT>
      </LANGUAGES>
      <VERSION>
        <MAJOR>6</MAJOR>
        <MINOR>1</MINOR>
        <BUILD>7601</BUILD>
        <SPBUILD>17514</SPBUILD>
        <SPLEVEL>1</SPLEVEL>
      </VERSION>
      <SYSTEMROOT>WINDOWS</SYSTEMROOT>
    </WINDOWS>
    <NAME>Windows 7 HOMEBASIC</NAME>
    <DESCRIPTION>Windows 7 HOMEBASIC</DESCRIPTION>
    <FLAGS>HomeBasic</FLAGS>
    <HARDLINKBYTES>3069177344</HARDLINKBYTES>
    <DISPLAYNAME>Windows 7 Home Basic</DISPLAYNAME>
    <DISPLAYDESCRIPTION>Windows 7 Home Basic</DISPLAYDESCRIPTION>
  </IMAGE>
  <IMAGE INDEX="3">
    <DIRCOUNT>9357</DIRCOUNT>
    <FILECOUNT>48117</FILECOUNT>
    <TOTALBYTES>8569006173</TOTALBYTES>
    <CREATIONTIME>
      <HIGHPART>0x01CB8901</HIGHPART>
      <LOWPART>0xEF63352E</LOWPART>
    </CREATIONTIME>
    <LASTMODIFICATIONTIME>
      <HIGHPART>0x01CBF8BC</HIGHPART>
      <LOWPART>0xF5B79DFA</LOWPART>
    </LASTMODIFICATIONTIME>
    <WINDOWS>
      <ARCH>0</ARCH>
      <PRODUCTNAME>Microsoftr Windowsr Operating System</PRODUCTNAME>
      <EDITIONID>HomePremium</EDITIONID>
      <INSTALLATIONTYPE>Client</INSTALLATIONTYPE>
      <HAL>acpiapic</HAL>
      <PRODUCTTYPE>WinNT</PRODUCTTYPE>
      <PRODUCTSUITE>Terminal Server</PRODUCTSUITE>
      <LANGUAGES>
        <LANGUAGE>en-US</LANGUAGE>
        <DEFAULT>en-US</DEFAULT>
      </LANGUAGES>
      <VERSION>
        <MAJOR>6</MAJOR>
        <MINOR>1</MINOR>
        <BUILD>7601</BUILD>
        <SPBUILD>17514</SPBUILD>
        <SPLEVEL>1</SPLEVEL>
      </VERSION>
      <SYSTEMROOT>WINDOWS</SYSTEMROOT>
    </WINDOWS>
    <NAME>Windows 7 HOMEPREMIUM</NAME>
    <DESCRIPTION>Windows 7 HOMEPREMIUM</DESCRIPTION>
    <FLAGS>HomePremium</FLAGS>
    <HARDLINKBYTES>3448347246</HARDLINKBYTES>
    <DISPLAYNAME>Windows 7 Home Premium</DISPLAYNAME>
    <DISPLAYDESCRIPTION>Windows 7 Home Premium</DISPLAYDESCRIPTION>
  </IMAGE>
  <IMAGE INDEX="4">
    <DIRCOUNT>9414</DIRCOUNT>
    <FILECOUNT>48560</FILECOUNT>
    <TOTALBYTES>8450188760</TOTALBYTES>
    <CREATIONTIME>
      <HIGHPART>0x01CB8901</HIGHPART>
      <LOWPART>0xEF63352E</LOWPART>
    </CREATIONTIME>
    <LASTMODIFICATIONTIME>
      <HIGHPART>0x01CBF8BD</HIGHPART>
      <LOWPART>0x0FC1CCF2</LOWPART>
    </LASTMODIFICATIONTIME>
    <WINDOWS>
      <ARCH>0</ARCH>
      <PRODUCTNAME>Microsoftr Windowsr Operating System</PRODUCTNAME>
      <EDITIONID>Professional</EDITIONID>
      <INSTALLATIONTYPE>Client</INSTALLATIONTYPE>
      <HAL>acpiapic</HAL>
      <PRODUCTTYPE>WinNT</PRODUCTTYPE>
      <PRODUCTSUITE>Terminal Server</PRODUCTSUITE>
      <LANGUAGES>
        <LANGUAGE>en-US</LANGUAGE>
        <DEFAULT>en-US</DEFAULT>
      </LANGUAGES>
      <VERSION>
        <MAJOR>6</MAJOR>
        <MINOR>1</MINOR>
        <BUILD>7601</BUILD>
        <SPBUILD>17514</SPBUILD>
        <SPLEVEL>1</SPLEVEL>
      </VERSION>
      <SYSTEMROOT>WINDOWS</SYSTEMROOT>
    </WINDOWS>
    <NAME>Windows 7 PROFESSIONAL</NAME>
    <DESCRIPTION>Windows 7 PROFESSIONAL</DESCRIPTION>
    <FLAGS>Professional</FLAGS>
    <HARDLINKBYTES>3314667745</HARDLINKBYTES>
    <DISPLAYNAME>Windows 7 Professional</DISPLAYNAME>
    <DISPLAYDESCRIPTION>Windows 7 Professional</DISPLAYDESCRIPTION>
  </IMAGE>
  <IMAGE INDEX="5">
    <DIRCOUNT>9450</DIRCOUNT>
    <FILECOUNT>48736</FILECOUNT>
    <TOTALBYTES>8610128720</TOTALBYTES>
    <CREATIONTIME>
      <HIGHPART>0x01CB8901</HIGHPART>
      <LOWPART>0xEF63352E</LOWPART>
    </CREATIONTIME>
    <LASTMODIFICATIONTIME>
      <HIGHPART>0x01CBF8BD</HIGHPART>
      <LOWPART>0x20960638</LOWPART>
    </LASTMODIFICATIONTIME>
    <WINDOWS>
      <ARCH>0</ARCH>
      <PRODUCTNAME>Microsoftr Windowsr Operating System</PRODUCTNAME>
      <EDITIONID>Ultimate</EDITIONID>
      <INSTALLATIONTYPE>Client</INSTALLATIONTYPE>
      <HAL>acpiapic</HAL>
      <PRODUCTTYPE>WinNT</PRODUCTTYPE>
      <PRODUCTSUITE>Terminal Server</PRODUCTSUITE>
      <LANGUAGES>
        <LANGUAGE>en-US</LANGUAGE>
        <DEFAULT>en-US</DEFAULT>
      </LANGUAGES>
      <VERSION>
        <MAJOR>6</MAJOR>
        <MINOR>1</MINOR>
        <BUILD>7601</BUILD>
        <SPBUILD>17514</SPBUILD>
        <SPLEVEL>1</SPLEVEL>
      </VERSION>
      <SYSTEMROOT>WINDOWS</SYSTEMROOT>
    </WINDOWS>
    <NAME>Windows 7 ULTIMATE</NAME>
    <DESCRIPTION>Windows 7 ULTIMATE</DESCRIPTION>
    <FLAGS>Ultimate</FLAGS>
    <HARDLINKBYTES>3473147759</HARDLINKBYTES>
    <DISPLAYNAME>Windows 7 Ultimate</DISPLAYNAME>
    <DISPLAYDESCRIPTION>Windows 7 Ultimate</DISPLAYDESCRIPTION>
  </IMAGE>
</WIM>

Below is the same command (imagex /info) on a Windows 7 SP1 x64 WIM

B:\AIO>imagex /info B:\install.wim

ImageX Tool for Windows
Copyright (C) Microsoft Corp. All rights reserved.
Version: 6.1.7600.16385

WIM Information:
----------------
Path:        B:\install.wim
GUID:        {65caf905-5e50-4a42-900b-5e14084871e9}
Image Count: 4
Compression: LZX
Part Number: 1/1
Attributes:  0xc
             Integrity info
             Relative path junction


Available Image Choices:
------------------------
<WIM>
  <TOTALBYTES>2954387497</TOTALBYTES>
  <IMAGE INDEX="1">
    <DIRCOUNT>13365</DIRCOUNT>
    <FILECOUNT>64285</FILECOUNT>
    <TOTALBYTES>11710161360</TOTALBYTES>
    <CREATIONTIME>
      <HIGHPART>0x01CB8936</HIGHPART>
      <LOWPART>0x131F339A</LOWPART>
    </CREATIONTIME>
    <LASTMODIFICATIONTIME>
      <HIGHPART>0x01CBF8F0</HIGHPART>
      <LOWPART>0x0027D0DC</LOWPART>
    </LASTMODIFICATIONTIME>
    <WINDOWS>
      <ARCH>9</ARCH>
      <PRODUCTNAME>Microsoftr Windowsr Operating System</PRODUCTNAME>
      <EDITIONID>HomeBasic</EDITIONID>
      <INSTALLATIONTYPE>Client</INSTALLATIONTYPE>
      <HAL>acpiapic</HAL>
      <PRODUCTTYPE>WinNT</PRODUCTTYPE>
      <PRODUCTSUITE>Terminal Server</PRODUCTSUITE>
      <LANGUAGES>
        <LANGUAGE>en-US</LANGUAGE>
        <DEFAULT>en-US</DEFAULT>
      </LANGUAGES>
      <VERSION>
        <MAJOR>6</MAJOR>
        <MINOR>1</MINOR>
        <BUILD>7601</BUILD>
        <SPBUILD>17514</SPBUILD>
        <SPLEVEL>1</SPLEVEL>
      </VERSION>
      <SYSTEMROOT>WINDOWS</SYSTEMROOT>
    </WINDOWS>
    <NAME>Windows 7 HOMEBASIC</NAME>
    <DESCRIPTION>Windows 7 HOMEBASIC</DESCRIPTION>
    <FLAGS>HomeBasic</FLAGS>
    <HARDLINKBYTES>4497873056</HARDLINKBYTES>
    <DISPLAYNAME>Windows 7 Home Basic</DISPLAYNAME>
    <DISPLAYDESCRIPTION>Windows 7 Home Basic</DISPLAYDESCRIPTION>
  </IMAGE>
  <IMAGE INDEX="2">
    <DIRCOUNT>13614</DIRCOUNT>
    <FILECOUNT>65339</FILECOUNT>
    <TOTALBYTES>12222587449</TOTALBYTES>
    <CREATIONTIME>
      <HIGHPART>0x01CB8936</HIGHPART>
      <LOWPART>0x131F339A</LOWPART>
    </CREATIONTIME>
    <LASTMODIFICATIONTIME>
      <HIGHPART>0x01CBF8F0</HIGHPART>
      <LOWPART>0x236D21C7</LOWPART>
    </LASTMODIFICATIONTIME>
    <WINDOWS>
      <ARCH>9</ARCH>
      <PRODUCTNAME>Microsoftr Windowsr Operating System</PRODUCTNAME>
      <EDITIONID>HomePremium</EDITIONID>
      <INSTALLATIONTYPE>Client</INSTALLATIONTYPE>
      <HAL>acpiapic</HAL>
      <PRODUCTTYPE>WinNT</PRODUCTTYPE>
      <PRODUCTSUITE>Terminal Server</PRODUCTSUITE>
      <LANGUAGES>
        <LANGUAGE>en-US</LANGUAGE>
        <DEFAULT>en-US</DEFAULT>
      </LANGUAGES>
      <VERSION>
        <MAJOR>6</MAJOR>
        <MINOR>1</MINOR>
        <BUILD>7601</BUILD>
        <SPBUILD>17514</SPBUILD>
        <SPLEVEL>1</SPLEVEL>
      </VERSION>
      <SYSTEMROOT>WINDOWS</SYSTEMROOT>
    </WINDOWS>
    <NAME>Windows 7 HOMEPREMIUM</NAME>
    <DESCRIPTION>Windows 7 HOMEPREMIUM</DESCRIPTION>
    <FLAGS>HomePremium</FLAGS>
    <HARDLINKBYTES>4912986404</HARDLINKBYTES>
    <DISPLAYNAME>Windows 7 Home Premium</DISPLAYNAME>
    <DISPLAYDESCRIPTION>Windows 7 Home Premium</DISPLAYDESCRIPTION>
  </IMAGE>
  <IMAGE INDEX="3">
    <DIRCOUNT>13701</DIRCOUNT>
    <FILECOUNT>65851</FILECOUNT>
    <TOTALBYTES>12122886417</TOTALBYTES>
    <CREATIONTIME>
      <HIGHPART>0x01CB8936</HIGHPART>
      <LOWPART>0x131F339A</LOWPART>
    </CREATIONTIME>
    <LASTMODIFICATIONTIME>
      <HIGHPART>0x01CBF8F0</HIGHPART>
      <LOWPART>0x47C4A445</LOWPART>
    </LASTMODIFICATIONTIME>
    <WINDOWS>
      <ARCH>9</ARCH>
      <PRODUCTNAME>Microsoftr Windowsr Operating System</PRODUCTNAME>
      <EDITIONID>Professional</EDITIONID>
      <INSTALLATIONTYPE>Client</INSTALLATIONTYPE>
      <HAL>acpiapic</HAL>
      <PRODUCTTYPE>WinNT</PRODUCTTYPE>
      <PRODUCTSUITE>Terminal Server</PRODUCTSUITE>
      <LANGUAGES>
        <LANGUAGE>en-US</LANGUAGE>
        <DEFAULT>en-US</DEFAULT>
      </LANGUAGES>
      <VERSION>
        <MAJOR>6</MAJOR>
        <MINOR>1</MINOR>
        <BUILD>7601</BUILD>
        <SPBUILD>17514</SPBUILD>
        <SPLEVEL>1</SPLEVEL>
      </VERSION>
      <SYSTEMROOT>WINDOWS</SYSTEMROOT>
    </WINDOWS>
    <NAME>Windows 7 PROFESSIONAL</NAME>
    <DESCRIPTION>Windows 7 PROFESSIONAL</DESCRIPTION>
    <FLAGS>Professional</FLAGS>
    <HARDLINKBYTES>4786527097</HARDLINKBYTES>
    <DISPLAYNAME>Windows 7 Professional</DISPLAYNAME>
    <DISPLAYDESCRIPTION>Windows 7 Professional</DISPLAYDESCRIPTION>
  </IMAGE>
  <IMAGE INDEX="4">
    <DIRCOUNT>13737</DIRCOUNT>
    <FILECOUNT>66029</FILECOUNT>
    <TOTALBYTES>12285492779</TOTALBYTES>
    <CREATIONTIME>
      <HIGHPART>0x01CB8936</HIGHPART>
      <LOWPART>0x131F339A</LOWPART>
    </CREATIONTIME>
    <LASTMODIFICATIONTIME>
      <HIGHPART>0x01CBF8F0</HIGHPART>
      <LOWPART>0x6D7F6938</LOWPART>
    </LASTMODIFICATIONTIME>
    <WINDOWS>
      <ARCH>9</ARCH>
      <PRODUCTNAME>Microsoftr Windowsr Operating System</PRODUCTNAME>
      <EDITIONID>Ultimate</EDITIONID>
      <INSTALLATIONTYPE>Client</INSTALLATIONTYPE>
      <HAL>acpiapic</HAL>
      <PRODUCTTYPE>WinNT</PRODUCTTYPE>
      <PRODUCTSUITE>Terminal Server</PRODUCTSUITE>
      <LANGUAGES>
        <LANGUAGE>en-US</LANGUAGE>
        <DEFAULT>en-US</DEFAULT>
      </LANGUAGES>
      <VERSION>
        <MAJOR>6</MAJOR>
        <MINOR>1</MINOR>
        <BUILD>7601</BUILD>
        <SPBUILD>17514</SPBUILD>
        <SPLEVEL>1</SPLEVEL>
      </VERSION>
      <SYSTEMROOT>WINDOWS</SYSTEMROOT>
    </WINDOWS>
    <NAME>Windows 7 ULTIMATE</NAME>
    <DESCRIPTION>Windows 7 ULTIMATE</DESCRIPTION>
    <FLAGS>Ultimate</FLAGS>
    <HARDLINKBYTES>4947144081</HARDLINKBYTES>
    <DISPLAYNAME>Windows 7 Ultimate</DISPLAYNAME>
    <DISPLAYDESCRIPTION>Windows 7 Ultimate</DISPLAYDESCRIPTION>
  </IMAGE>
</WIM>

Imagex is from the official Microsoft "Automated Installation Kit" for Windows 7

解决方案

I have looked every where and then some... I have finally gotten the batch file to be a dynamic system.

Here is the code:

:start
@echo off
cls
cd /d %~dp0
goto setwiminfo

rem Sets up the working directory. (Inportant to do this)

:setwiminfo
cls
echo Please enter the full path to the
set /p WIM=WIM file of your choice:
cls
echo Path set.
pause
imagex /info "%WIM%" | find "<NAME>" >> Images.txt
goto dest

rem Sets where the WIM is located and also makes the list of images avalable in the wim.

:dest
cls
echo Where would you like to install the image?
set /p dest=Enter the drive letter here [A-Z]:
goto index

rem This sets the destination that the image is to be applied to. (Cool tip: you can apply to a directory E.G. X:\dir\)
rem The cool tip is usually used for devolapement.

:index
echo :start >> Display.bat
echo @echo off >> Display.bat
echo cls >> Display.bat
echo cd /d "%~dp0" >> Display.bat
echo echo List of images avalable for instalation: >> Display.bat
echo echo *Note the image number on the left of the name* >> Display.bat
echo find /N "<NAME>" Images.txt >> Display.bat
echo pause >> Display.bat
echo del Images.txt >> Display.bat
echo exit >> Display.bat
start Display.bat
cls
set /p index=Please inter the number of the image (name) you want to install:
goto install 

rem This makes another batch file that displays the index information in a new window.

:install
echo this will install the wim to the destination you selected.
pause
cls
imagex /apply "%WIM%" %index% "%dest%":
goto boot

rem Applies the image to the selected drive (or folder if you chose).

:boot
echo EasyBCD is starting from which you can install the boot loader.
Y:\Programs\EasyBCD\EasyBCD.exe
pause
goto cleanup

rem This runs EasyBCD because I havn't integrated bcdboot commands yet... (coming soon)

:cleanup
del Display.bat
del Images.txt
goto choice

rem This cleans up files created by the script.

:choice
cls
echo do you want to install another image?
choice
if %ERRORLEVEL% EQU 1 goto start
if %ERRORLEVEL% EQU 2 goto end
echo Error please try again :(
pause
goto choice

rem This loops the script if the user want's to apply another image.

:end
cls
echo Thank you for using Elliot Labs installer!
echo For feature requests please email elliot-labs@live.com
echo Thank you!
pause | echo Press any key to exit...
exit

这篇关于BATCH文件自动创建菜单的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆