CM_Enumerate_Classes_Ex函式 (cfgmgr32.h)

[從 Windows 8 和 Windows Server 2012 開始,此函式已被取代。 請改用 CM_Enumerate_Classes 。]

CM_Enumerate_Classes_Ex 函式 在重複呼叫時,藉由提供每個類別的 GUID,列舉本機或遠端電腦的已安裝 裝置類別

語法

CMAPI CONFIGRET CM_Enumerate_Classes_Ex(
  [in]           ULONG    ulClassIndex,
  [out]          LPGUID   ClassGuid,
  [in]           ULONG    ulFlags,
  [in, optional] HMACHINE hMachine
);

參數

[in] ulClassIndex

呼叫端提供的索引到計算機的裝置類別清單中。 如需詳細資訊,請參閱下列一節。

[out] ClassGuid

呼叫端提供的 GUID 結構地址 (Microsoft Windows SDK) 中所述,以接收裝置類別的 GUID。

[in] ulFlags

從 Windows 8 開始,呼叫端可以指定下列旗標:

CM_ENUMERATE_CLASSES_INSTALLER

列舉裝置安裝類別。

CM_ENUMERATE_CLASSES_INTERFACE

列舉裝置介面類別。

否則,應設定為零。

[in, optional] hMachine

呼叫端提供的機器句柄,是從先前呼叫 CM_Connect_Machine取得。

注意從 Windows 8 和 Windows Server 2012 開始,不支援使用此函式來存取遠端計算機,因為此功能已移除。
 

傳回值

如果作業成功,函式會傳回CR_SUCCESS。 否則,它會傳回 Cfgmgr32.h 中定義的其中一個CR_前置錯誤碼。

備註

若要列舉本機或遠端計算機的裝置類別,請重複呼叫 CM_Enumerate_Classes_Ex ,從 ulClassIndex 索引值為零開始,並在每次後續呼叫時遞增索引值,直到函式傳回CR_NO_SUCH_VALUE為止。 某些索引值可能代表包含無效類別數據的清單專案,在此情況下,函式會傳回CR_INVALID_DATA。 您可以忽略這個傳回值。

從此函式取得的類別 GUID 可用來做為 裝置安裝函式的輸入。

從 Windows 8 和更新版本的操作系統開始,呼叫端可以使用ulFlags成員來指定CM_Enumerate_Classes_Ex應該傳回的裝置類別。 在 Windows 8 之前,CM_Enumerate_Classes_Ex只傳回裝置設定類別。

Windows 8 和 Windows Server 2012 及更新版本的作業系統中已移除存取遠端電腦的功能,因此您無法在這些版本的 Windows 上執行時存取遠端電腦。

規格需求

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

另請參閱

CM_Enumerate_Classes