Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/batch-file/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Batch file 批处理文件:对于目录中的每个inf,安装它_Batch File_Driver_Inf - Fatal编程技术网

Batch file 批处理文件:对于目录中的每个inf,安装它

Batch file 批处理文件:对于目录中的每个inf,安装它,batch-file,driver,inf,Batch File,Driver,Inf,我有一个包含数百个其他子目录的目录,这些子目录都包含我从.CAB文件中提取的各种INF文件 我想创建一个批处理文件,查找此目录中的每个inf文件并安装它 迄今为止的代码: for /f %f in ('dir /s /b c:\temp_dir\*.inf') do rundll32 syssetup,SetupInfObjectInstallAction DefaultInstall 128 %f 作为回报,我得到一个关键的消息框出现数百次,说“安装失败”。请有人指出我的错误,因为我完全被难

我有一个包含数百个其他子目录的目录,这些子目录都包含我从.CAB文件中提取的各种INF文件

我想创建一个批处理文件,查找此目录中的每个inf文件并安装它

迄今为止的代码:

for /f %f in ('dir /s /b c:\temp_dir\*.inf') do rundll32 syssetup,SetupInfObjectInstallAction DefaultInstall 128 %f
作为回报,我得到一个关键的消息框出现数百次,说“安装失败”。请有人指出我的错误,因为我完全被难住了

环境:Windows7x64


提前谢谢

在批处理文件中使用
%%f
。在cmd提示符下使用
%f
,并带有for循环

此外,如果当前目录不是
c:\temp\u dir
,则需要将其添加到最终术语中

@echo off
for /f "delims=" %%f in ('dir /s /b "c:\temp_dir\*.inf" ') do rundll32 syssetup,SetupInfObjectInstallAction DefaultInstall 128 "c:\temp_dir\%%f"
编辑:使目录成为当前目录的不同方法,并添加了
“delims=“
以上内容)


应安装驱动程序,这是Microsoft的一个免费工具,可用于安装驱动程序包,如
dpinst32.exe
dpinst64.exe
。例如,要安装由多个*.inf和*.sys组成的WLAN适配器的所有驱动程序,所有属于一起的驱动程序文件必须放在一个目录中(默认)仅在该目录中执行适当的
dpinst*.exe
,即可成功安装WLAN驱动程序文件,而无需其他软件。使用此方法,几乎所有随附的驱动程序安装软件包都可以只安装驱动程序而无需其他软件附加软件。当然,
dpinst*.exe
是为驱动程序包编写的,不用于安装带有*.inf文件的应用程序,因此不能(应该)用于安装应用程序。感谢提供此信息。现在可以了,但我的所有INF文件都会在一个关键对话框中出现“安装失败”。你知道为什么吗这些驱动程序在手动安装时工作正常。我唯一想到的是,INF所在的文件夹中有其他文件,INF文件可以引用这些文件。这可能是问题所在吗?请尝试上面编辑的代码-它还有
“delims=“
来处理长文件名。感谢您的回复。不幸的是,这也没有起作用。相同的结果。您的
rundll32
命令行是否与单个
.inf
文件一起工作?奇怪的是,不是。但是,如果您在设备管理器向导中指定inf,它们都是手动工作的。有关内阁文件位于以下位置:
@echo off
cd /d "c:\temp_dir\"
for /f "delims=" %%f in ('dir /s /b *.inf ') do rundll32 syssetup,SetupInfObjectInstallAction DefaultInstall 128 "%%f"