右键单击.inf文件时,您可以选择“安装”。我想使用批处理文件从命令行安装.inf文件。这样做的“正确”方法是什么?
谢谢!
[编辑] 我应该澄清一下,我试图在Windows XP(而不是Vista)上运行它。虽然我在下面给出了InfDefaultInstall.exe的答案,但我认为该程序不是随XP一起提供的。
答案 0 :(得分:7)
您可以在查看HKCR\inffile\shell\Install\command
注册表项时找到该命令。在Windows XP上,这是
%SystemRoot%\System32\rundll32.exe setupapi,InstallHinfSection DefaultInstall 132 %1
在Windows Vista及更高版本上,这将是
%SystemRoot%\System32\InfDefaultInstall.exe "%1"
要在多个Windows版本中使用批处理文件,您需要一些技巧。您可以使用reg.exe
来查询密钥并尝试解析输出(我没有找到从reg
获取值的快速方法)。如果你知道你正在运行什么平台,你也可以硬编码命令行并根据Windows版本进行切换(这需要另外一个黑客来找到它。%OS%
不会告诉你更多“不幸的是,Windows NT“。”。
答案 1 :(得分:2)
rem tested/works :inf ver | findstr /il "Version 6." > nul if %ERRORLEVEL%==0 goto :vista :xp start/wait rundll32.exe setupapi,InstallHinfSection DefaultInstall 4 %_% goto :eof :vista %SystemRoot%\System32\InfDefaultInstall.exe "%_%" :eof
答案 2 :(得分:1)
适用于任何具有IE 4.0 +的Windows系统:
RunDll32 advpack.dll,LaunchINFSection <file.inf>,DefaultInstall