【发布时间】:2010-02-17 18:00:24
【问题描述】:
如何使用 C++ 安装硬件驱动程序(inf 文件)?
平台:Win32
【问题讨论】:
-
你不写 C++ 代码,你写的是一个 inf 文件。格式有据可查,请尝试在您的问题中输入多行文本。
-
@nobugz:实际上,不止这些。
如何使用 C++ 安装硬件驱动程序(inf 文件)?
平台:Win32
【问题讨论】:
该过程通常称为预安装。 (正常的安装过程是由硬件设备的到来触发的。)
相关功能可以在DDK的<DIFxAPI.h>中找到。您可能想致电DriverPackageInstall()。预期的返回值为ERROR_NO_SUCH_DEVINST [原文如此],因为还没有这样的设备。
有一些 64 位时髦:您不能从 Win32 应用程序安装 64 位驱动程序(至少在 XP/Vista/Windows7/2003/2008 中不能)。因此,您的 Win32 安装程序必须检查 DriverPackageInstall() 是否返回 ERROR_IN_WOW64,然后调用 CreateProcess 来启动您的 64 位安装程序。
【讨论】:
我会考虑在 setupapi.dll 中使用 InstallHinfSection 函数。以下是相关文档:
http://msdn.microsoft.com/en-us/library/aa376957%28VS.85%29.aspx
【讨论】: