
我有一個名為 X 的驅動程序,用於管理硬體組件 A。
到目前為止,我一直在使用 .NET Framework 6.0、C# 程式語言以及 PNPUtil.exe 來安裝驅動程序,但我認為我的方法是錯誤的,因為我剛剛執行了以下操作:
ProcessStartInfo psi = new ProcessStartInfo
{
FileName = "PnPUtil.exe",
Arguments = $"-i -a \"{driverFile}\"",
UseShellExecute = false,
CreateNoWindow = true,
RedirectStandardOutput = true,
RedirectStandardError = true,
};
這只是安裝,控制台中的設備說它已安裝,但是當我進入設備管理並按驅動程式查找設備時,我找不到我的驅動程式Y。操作的教程這個以及 PowerShell 是否也可以複製這個。我的作業系統是 Windows 11。
答案1
您安裝了驅動程序,但它是否用於設備取決於驅動程式在其.inf
檔案中的定義。
請注意,如果您安裝較舊的驅動程序,Windows 可能會自動將其更新到較新的版本。若要阻止該更新,請參閱 這個答案。
Windows 安裝驅動程式的命令是 PnPUtil,使用指令:
pnputil -i -a <driverinf>
如果要安裝的INF有一個DefaultInstall
部分,也可以使用下列指令安裝:
rundll32 advpack.dll,LaunchINFSection <PathTo>\name.inf,,1
如果某個DefaultInstall
部分不存在,那麼您需要找到要呼叫的安裝部分,而不是使用以下命令:
rundll32 advpack.dll,LaunchINFSection <PathTo>\name.inf,<InstallSection>,1
資料來源: