DIF_ALLOW_INSTALL
DIF_ALLOW_INSTALL要求會詢問裝置的安裝程式,Windows 是否可以繼續安裝裝置。
傳送時
選取裝置的驅動程式之後,但在安裝裝置之前。
誰處理
類別共同安裝程式 |
可以處理 |
裝置共同安裝程式 |
不應該處理 |
類別安裝程式 |
可以處理 |
安裝程式輸入
DeviceInfoSet
提供包含 裝置之裝置資訊集 的控制碼。
DeviceInfoData
提供 SP_DEVINFO_DATA 結構的指標,以識別裝置資訊集中的裝置。
裝置安裝參數
與DeviceInfoData相關聯的裝置安裝參數 (SP_DEVINSTALL_PARAMS) 。
安裝程式輸出
安裝程式傳回值
共同安裝程式可以傳回NO_ERROR或 Win32 錯誤。 共同安裝程式不應該針對此 DIF 要求傳回ERROR_DI_POSTPROCESSING_REQUIRED。
類別安裝程式通常會傳回ERROR_DI_DO_DEFAULT或 Win32 錯誤碼。
此 DIF 要求的一般 Win32 錯誤碼包括ERROR_DI_DONT_INSTALL和ERROR_NON_WINDOWS_NT_DRIVER。
注意 類別安裝程式和共同安裝程式不應該ERROR_REQUIRES_INTERACTIVE_WINDOWSTATION,因為這會導致裝置安裝失敗。 如果裝置安裝需要使用者互動,類別安裝程式和共同安裝程式應該支援 完成安裝動作。
預設 DIF 程式碼處理常式
無
安裝程式作業
為了回應DIF_ALLOW_INSTALL要求安裝程式確認 Windows 是否可以安裝裝置。
如果安裝程式判斷選取的驅動程式不正確 (,例如,如果驅動程式是 Windows 9x 專用的驅動程式,無法在 NT 型作業系統上正常運作,) 或判斷選取的驅動程式已知有 Bug,則安裝程式可能會失敗。
如果已在裝置安裝參數中設定DI_QUIETINSTALL旗標,而且安裝程式在裝置安裝期間必須顯示 UI,安裝程式可能會失敗此要求。 不過,此失敗很罕見,因為安裝程式通常會提供任何 UI 頁面來回應DIF_NEWDEVICEWIZARD_FINISHINSTALL要求。 在此情況下,UI 不會防止安裝程式成功設定無訊息旗標的DIF_ALLOW_INSTALL要求。 不過,如果安裝程式無法將其 UI 限制為完成安裝案例,則如果已設定 DI_QUIETINSTALL 旗標,安裝程式必須失敗此 DIF 要求。 例如,如果安裝程式呼叫顯示 UI 的廠商提供的程式碼,安裝程式可能會有這項限制。
如果安裝程式失敗此 DIF 要求,Windows 會停止安裝。
如果安裝程式失敗此 DIF 要求,且未在裝置安裝參數中設定DI_QUIETINSTALL,安裝程式應該會顯示一個對話方塊,其中包含說明裝置未安裝原因的訊息。
如需 DIF 程式碼的詳細資訊,請參閱 處理 DIF 程式碼。
規格需求
版本 |
Microsoft Windows 2000 和更新版本的 Windows 支援。 |
標頭 |
Setupapi.h (包括 Setupapi.h) |