共用方式為


SetupDiRemoveDeviceInterface 函式 (setupapi.h)

SetupDiRemoveDeviceInterface函式會從系統移除已註冊的裝置介面。

語法

WINSETUPAPI BOOL SetupDiRemoveDeviceInterface(
  [in]      HDEVINFO                  DeviceInfoSet,
  [in, out] PSP_DEVICE_INTERFACE_DATA DeviceInterfaceData
);

參數

[in] DeviceInfoSet

包含要移除之裝置介面之 裝置資訊集 的指標。 此控制碼通常是 由 SetupDiGetClassDevs傳回。

[in, out] DeviceInterfaceData

指定DeviceInfoSet中要移除之裝置介面之SP_DEVICE_INTERFACE_DATA結構的指標。 此指標通常是 由 SetupDiEnumDeviceInterfaces傳回。

移除介面之後,此函式會在DeviceInterfaceData中設定SPINT_REMOVED旗標。旗標。 它也會清除SPINT_ACTIVE旗標,但請注意,呼叫此函式之前應該已經清除此旗標。

傳回值

如果函式未發生錯誤,SetupDiRemoveDeviceInterface會傳回TRUE。 如果函式已完成錯誤,它會傳回 FALSE ,而且呼叫 GetLastError即可擷取失敗的錯誤碼。

備註

此函式的呼叫端必須是 Administrators 群組的成員。

SetupDiRemoveDeviceInterface 會從系統移除指定的裝置介面。 這包括刪除相關聯的登錄機碼。

呼叫 SetupDiDeleteDeviceInterfaceData ,從裝置資訊清單中刪除介面。

必須停用裝置介面才能移除。 如果啟用介面,此函式會失敗,而且 GetLastError 會傳回ERROR_DEVICE_INTERFACE_ACTIVE。 例如,IOCTL) (提供的任何介面特定機制來停用介面。 如果呼叫端無法停用介面,而且必須移除介面,則呼叫端必須使用 SetupDiChangeState停止基礎裝置。 停止裝置會停用裝置公開的所有介面。

需求

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

另請參閱

SetupDiChangeState

SetupDiCreateDeviceInterface

SetupDiDeleteDeviceInterfaceData

SetupDiEnumDeviceInterfaces

SetupDiGetClassDevs