SetupDiUnremoveDevice 函式 (setupapi.h)

SetupDiUnremoveDevice 函式是安裝要求DIF_UNREMOVE的默認處理程式。

語法

WINSETUPAPI BOOL SetupDiUnremoveDevice(
  [in]      HDEVINFO         DeviceInfoSet,
  [in, out] PSP_DEVINFO_DATA DeviceInfoData
);

參數

[in] DeviceInfoSet

本機系統的 裝置資訊集 句柄,其中包含代表要還原和重新啟動之裝置的裝置信息元素。

[in, out] DeviceInfoData

指定 DeviceInfoSet 中裝置資訊元素之SP_DEVINFO_DATA結構的指標。 這是 IN-OUT 參數,因為 DeviceInfoData。DevInst 可能會在傳回時使用新的句柄值來更新。

傳回值

如果函式成功,函式會傳回 TRUE 。 否則,它會傳回 FALSE ,而且可以透過呼叫 GetLastError 來擷取記錄的錯誤。

備註

SetupDiUnremoveDevice 會將裝置還原到硬體配置檔。 如果可能,此函式會啟動裝置,或在裝置安裝參數中設定旗標,最終會提示使用者關閉系統。

注意 只有類別安裝程式應該呼叫 SetupDiUnremoveDevice ,而且只有在類別安裝程式在 SetupDiUnremoveDevice 完成預設裝置未移動作業之後,才能執行裝置未移動作業的情況。 在這種情況下,當安裝程式處理DIF_UNREMOVE要求時,類別安裝程序必須直接呼叫 SetupDiUnremoveDevice 。 如需呼叫預設處理程式的詳細資訊,請參閱呼叫預設 DIF 程式代碼處理程式式。
 
還原的裝置必須具有 類別安裝參數,才能DIF_UNREMOVE ,否則函式會失敗, 而且 GetLastError 會傳回ERROR_NO_CLASSINSTALL_PARAMS。

DeviceInfoSet 只能包含本機計算機上的元素。

SetupDiUnremoveDevice 的呼叫端必須是 Administrators 群組的成員。

規格需求

需求
最低支援的用戶端 可在 Microsoft Windows 2000 和更新版本的 Windows 中使用。
目標平台 桌面
標頭 setupapi.h (包括 Setupapi.h)
程式庫 Setupapi.lib
Dll Setupapi.dll

另請參閱

DIF_UNREMOVE

SP_DEVINFO_DATA

SetupDiRemoveDevice