WinPE自动脚本

时间:2012-06-06 01:00:06

标签: winpe

我刚刚用WinPE 3.0设置了一个可启动的UFD,我需要它在启动时自动运行几个脚本。

我想知道是否有人建议设置自动脚本以列出本地驱动器上的分区,显示系统日期,列出当前IP以及捕获本地驱动器的映像。

如果有人能提供帮助那就太棒了!感谢。

2 个答案:

答案 0 :(得分:1)

在将脚本放入WinPE之前,独立构建脚本并测试其功能。然后安装winPE,以便编辑它并将所有脚本放在winPE中

挂载命令:

  

DISM / Mount-WIM /WimFile:C:.. [你的酒位于哪里] \ ISO \ sources \ boot.wim / index:1 / MountDir:mount

然后将脚本放在mount文件夹中的一个文件夹中(现在应该在其中包含内容)。完成后,您可以通过修改..\Windows\System32\startnet.cmd文件轻松调用它们。

注意:不要删除第一行wpeinit。只需在其后添加:start <scriptname.bat or .vbs>

保存并关闭。

请记住:如果您在winPE中执行使用NIC处理任何内容的脚本,则需要将网络驱动程序插入到WinPE中。加载完winpe后,它会先自动调用startnet.cmd

有些教程可以找到here

答案 1 :(得分:0)

我在可启动的WinPE映像中添加了一个批处理文件,该映像执行许多这些任务。它首先检查以确保您实际运行WinPE(而不是从另一个操作系统运行批处理文件)。

set pVersion=WinPE not found
for /F "usebackq tokens=3" %%A IN (`reg query "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\WinPE" /v "Version" 2^>nul ^| find "Version"`) do (
set pVersion=%%A
)
echo WinPE Version: %pVersion%
IF /I "%pVersion%"=="3.0" GOTO ContinueProc
IF /I "%pVersion%"=="4.0" GOTO ContinueProc
echo *************************************************************************
echo **  ERROR: This restore batch file can only be used in WinPE version   **
echo **  3.0 and 4.0                                                        **
echo *************************************************************************
GOTO ExitInstall

然后我通过...

向用户列出磁盘0的磁盘,卷和分区信息
diskpart /s list.txt

... list.txt包含...

list disk
list volume
select disk 0
list partition
exit

然后我的批处理文件将清理磁盘0,格式化驱动器并应用磁盘映像。我使用imagex来捕获和应用图像。在您的情况下,您声明要捕获磁盘映像,您可以对网络驱动器,另一个硬盘驱动器,USB硬盘驱动器或UFD执行此操作。

例如

imagex /capture c: y:\mydiskimage.wim "My system disk"

要列出IP,您只需运行ipconfig。

如果希望您的批处理文件在启动时自动运行,您可以尝试编辑/创建winpeshl.ini,如果添加到Windows \ System32文件夹,则会启动自定义进程。

我确保我有startnet.cmd,然后列出我想要运行的内容。我添加了setlw.exe(在线搜索)以确保我的UFD始终是驱动器号Y.然后您可以将批处理文件作为最后一项运行。在此示例中,我还添加了cmd,以便用户在完成所有操作后获取命令提示符。

[LaunchApps]
%SYSTEMDRIVE%\Windows\system32\startnet.cmd
%SYSTEMDRIVE%\Windows\system32\setlw.exe
Y:\sources\mybatchfile.cmd
%SYSTEMDRIVE%\Windows\system32\cmd.exe

注意:我的批处理文件启动的第一个命令之一:

chdir /D %~dp0

...将目录更改为批处理文件的位置。