SetupDiInstallClassExA 函式 (setupapi.h)
SetupDiInstallClassEx 函式會安裝類別安裝程式或介面類別。
語法
WINSETUPAPI BOOL SetupDiInstallClassExA(
[in, optional] HWND hwndParent,
[in, optional] PCSTR InfFileName,
[in] DWORD Flags,
[in, optional] HSPFILEQ FileQueue,
[in, optional] const GUID *InterfaceClassGuid,
PVOID Reserved1,
PVOID Reserved2
);
參數
[in, optional] hwndParent
用於安裝這個類別的任何使用者介面之父視窗的句柄。 這個參數是選擇性的,而且可以是 NULL。
[in, optional] InfFileName
包含 INF 檔名之 NULL 終止字串的指標。 這個參數是選擇性的,而且可以是 NULL。 如果使用這個函式來安裝類別安裝程式,INF 檔案會包含 INF ClassInstall32 區段 ,而且此參數不得為 NULL。
如果使用這個函式來安裝介面類別,INF 檔案會包含 INF InterfaceInstall32 區段。
[in] Flags
DWORD 類型的值,可控制安裝程式。 旗標 可以是零或位 OR 的下列值:
DI_NOVCP
如果提供 FileQueue ,請設定此旗標。
DI_NOVCP指示 SetupInstallFromInfSection 函式不要建立自己的佇列,並改為使用呼叫端提供的佇列。
如果設定此旗標,則不會直接將檔案複製到佇列中。
如需 SetupInstallFromInfSection 函式的詳細資訊,請參閱 Microsoft Windows SDK 檔。
DI_NOBROWSE
如果複製作業找不到指定的檔案,請將此旗標設定為停用流覽。 如果呼叫端提供檔案佇列,則會忽略此旗標。
DI_FORCECOPY
將此旗標設定為一律複製檔案,即使檔案已存在於用戶的計算機上也一樣。 如果呼叫端提供檔案佇列,則會忽略此旗標。
DI_QUIETINSTALL
除非絕對必要,否則請將此旗標設定為隱藏使用者介面。 例如,不要顯示進度對話方塊。 如果呼叫端提供檔案佇列,則會忽略此旗標。
[in, optional] FileQueue
如果已設定DI_NOVCP旗標,此參數會提供檔案佇列的句柄,其中應該將檔案作業排入佇列,但未認可。
[in, optional] InterfaceClassGuid
GUID 的指標,識別要安裝的介面類別。 這個參數是選擇性的,而且可以是 NULL。 如果指定此參數,則會使用此函式來安裝 GUID 所代表的介面類別。 如果此參數為 NULL,則會使用此函式來安裝類別安裝程式。
Reserved1
保留的。 必須為零。
Reserved2
保留的。 必須為零。
傳回值
如果成功,SetupDiInstallClassEx 會傳回 TRUE 。 否則,它會傳回 FALSE ,而且可以使用 呼叫 GetLastError 來擷取記錄的錯誤。
備註
此函式的呼叫端必須是 Administrators 群組的成員。
SetupDiInstallClassEx 通常是由類別安裝程式呼叫,以安裝新的 裝置安裝類別 或新的 裝置介面類別。
注意
setupapi.h 標頭會將 SetupDiInstallClassEx 定義為別名,根據 UNICODE 預處理器常數的定義,自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱 函式原型的慣例。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | 可在 Microsoft Windows 2000 和更新版本的 Windows 中使用。 |
目標平台 | 桌面 |
標頭 | setupapi.h (包括 Setupapi.h) |
程式庫 | Setupapi.lib |