SetupDiGetINFClassA 函式 (setupapi.h)

SetupDiGetINFClass 函式會傳回指定裝置 INF 檔案的類別。

語法

WINSETUPAPI BOOL SetupDiGetINFClassA(
  [in]            PCSTR  InfName,
  [out]           LPGUID ClassGuid,
  [out]           PSTR   ClassName,
  [in]            DWORD  ClassNameSize,
  [out, optional] PDWORD RequiredSize
);

參數

[in] InfName

提供裝置 INF 檔名之 NULL 終止字串的指標。 此名稱可以包含路徑。 不過,如果只指定檔名,則會在登錄的 HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion 子機碼下,於 DevicePath 專案中列出的每個目錄中搜尋檔案。 NULL 終止 INF 檔名的字元長度上限,包括 NULL 終止符是MAX_PATH。

[out] ClassGuid

GUID 類型的變數指標,可接收指定 INF 檔案的類別 GUID。 如果 INF 檔案未指定類別名稱,函式會傳回GUID_NULL結構。 呼叫 SetupDiClassGuidsFromName ,以判斷是否已安裝具有此名稱的一或多個類別。

[out] ClassName

緩衝區的指標,接收NULL終止字串,其中包含指定 INF 檔案之類別的名稱。 如果 INF 檔案未指定類別名稱,但指定 GUID,此緩衝區會接收藉由呼叫 SetupDiClassNameFromGuid 擷取的名稱。 不過,如果 SetupDiClassNameFromGuid 無法擷取類別名稱 (,則類別不會安裝) ,它會傳回空字串。

[in] ClassNameSize

ClassName 參數所指向之緩衝區的大小,以字元為單位。 NULL 終止類別名稱的最大長度,以字元為單位為 MAX_CLASS_NAME_LEN。

[out, optional] RequiredSize

DWORD 型別變數的指標,可接收儲存類別名稱所需的字元數,包括終止 的 NULL。 此指標是選擇性的,可以是 NULL

傳回值

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

備註

請勿搭配 Windows 9x 或一般版本的 INF 檔案使用此函式。

注意

setupapi.h 標頭會將 SetupDiGetINFClass 定義為別名,根據 UNICODE 預處理器常數的定義,自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱 函式原型的慣例

規格需求

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

另請參閱

SetupDiBuildClassInfoList

SetupDiClassGuidsFromName

SetupDiClassNameFromGuid

SetupDiGetClassDescription