C++ を使用してハードウェア ドライバー ( inf ファイル) をインストールするにはどうすればよいですか?
プラットフォーム: Win32
setupapi.dll で InstallHinfSection 関数の使用を検討します。関連ドキュメントは次のとおりです。
http://msdn.microsoft.com/en-us/library/aa376957%28VS.85%29.aspx
このプロセスは通常、インストール前と呼ばれます。(通常のインストール プロセスは、ハードウェア デバイスの到着によって開始されます。)
<DIFxAPI.h>
関連する関数は、DDK から見つけることができます。あなたはおそらく電話したいでしょうDriverPackageInstall()
。ERROR_NO_SUCH_DEVINST
そのようなデバイスはまだないため、期待される戻り値は[sic] です。
64 ビットのファンキーさがあります。Win32 アプリから 64 ビット ドライバーをインストールすることはできません (少なくとも XP/Vista/Windows7/2003/2008 ではインストールできません)。したがって、Win32 インストーラーは、DriverPackageInstall()
返されるかどうかを確認ERROR_IN_WOW64
し、呼び出しCreateProcess
て 64 ビット インストーラーを起動する必要があります。