在工作中,我负责的任务之一是将计算机重置为出厂设置并安装更新的驱动程序。联想通过其系统更新工具使此操作变得简单,但戴尔和其他公司要求您手动安装驱动程序。
因为我在很多机器上都执行此过程,所以我试图找到一种方法来自动化这个过程,这样我所要做的就是将 USB 插入机器,启动批处理文件,然后放手。基本上,我需要一个批处理文件,将一堆驱动程序安装在一个文件夹中(我单独下载并先放在一起),而不需要为每个驱动程序按“确定”和“下一步”。我尝试了一些方法,但 /s 或 -s 似乎不起作用。有人有解决方法或知道如何做到这一点吗?
以下是我已经尝试过的代码:
pushd %~dp0
start /wait setup32.exe -s
echo press key when install finished!
pause
popd
还尝试过:
@echo off
start /wait "" adobereader.exe /s /passive /quiet EULA_ACCEPT=YES
到目前为止似乎没有任何效果。对于这两个程序,驱动程序安装都已开始,但仍需要用户交互才能继续安装,方法是按“确定”和“下一步”。
感谢您的所有帮助!
答案1
Richard,正如前面提到的,您需要一个成像解决方案。免费的是 Microsoft 的 WDS/MDT。但是,您需要研究它们的工作原理,以便让您的生活更轻松,并让您在未来的职位上更具市场竞争力。现在,如果您无法执行这些操作或您的公司不想这样做,那么您可以使用 pnputil 命令编写脚本。它是专门为驱动程序制作的,但您需要确保从安装文件中提取驱动程序。戴尔为其工作站系列(如 precision)提供 *.cab 文件。搜索“dell cab drivers”,您可以获得他们有驱动程序的计算机列表。
答案2
我知道这个问题已经相当老套了,但是为了帮助其他人解决这一难题,我在这里提出这个问题;戴尔实际上已经允许下载驱动程序 Cab 文件,这些文件包括特定型号的戴尔笔记本电脑(例如 Latitude E6410)的所有驱动程序。使用这些 Cab,您可以将它们提取到 USB 驱动器,然后创建一个简单的 Bat 文件以自动将驱动程序安装到 Windows 驱动程序存储区。如前所述,这尤其适用于戴尔计算机,但使用此方法,我创建了一个 Windows 映像,可以将其克隆到多种型号的戴尔机器上,从而节省了对多个映像的需求。简而言之,您下载您正在运行的型号的 Cab,将它们提取到一个目录中,将不同型号的文件夹分开。现在,在您刚刚创建的目录的根目录中创建一个 Bat 文件。像这样编写 Bat 文件:
@echo off&color a && Title [ MULTI .INF INSTALLER ]
::= Multi-PnP.Installer.cmd =
:: Put all Pnf, Infs, Cat, and Sys files etc. together in the same directory
:: Run Batch from current directory
cd %~dp0
:: Scan and Echo .inf files duing install
for /f "tokens=* delims=" %%a in ('dir /b /s /o:gen *.inf') do (
echo == Installing PnP Drivers == "%%a"
:: Delay
ping -n 4 localhost 1>nul
:: Windows Plug-n-Play Installer
start "" pnputil -i -a %%a
)
echo * DONE *
Echo.&Echo.&Echo.
echo == Reboot to finalize driver installs! ==&pause>nul
exit
此 Bat 将检查其当前文件夹内的所有目录,以查找任何 PnP 驱动程序。因此,请小心运行此文件的位置。根据您拥有的型号数量,这可能需要一些时间。我们使用大约 3 或 4 种不同的戴尔型号,因此脚本需要大约 10-15 分钟才能完成。附注:戴尔还表示,一些蓝牙驱动程序将不会包含在 Driver Cabs 中,因此不能 100% 保证拥有您可能需要的每个驱动程序。