共用方式為


SetupEnumInfSectionsW 函式 (setupapi.h)

[此函式可用於需求一節所指出的作業系統。 後續版本可能會變更或無法使用。 安裝程式API 不應該再用於安裝應用程式。 請改用 Windows Installer 來開發應用程式安裝程式。 SetupAPI 會繼續用於安裝設備驅動器。]

SetupEnumInfSections 函式會從 INF 檔案擷取區段名稱。

語法

WINSETUPAPI BOOL SetupEnumInfSectionsW(
  [in]            HINF  InfHandle,
  [in]            UINT  Index,
  [out, optional] PWSTR Buffer,
  [in]            UINT  Size,
  [out, optional] UINT  *SizeNeeded
);

參數

[in] InfHandle

要查詢之 INF 檔案的句柄。

[in] Index

要擷取之區段名稱之以零起始的索引。 此索引可能不會對應到區段在 INF 檔案中顯示的順序。

[out, optional] Buffer

接收區段名稱之緩衝區的指標。 您可以呼叫函式一次以取得所需的緩衝區大小、配置必要的記憶體,然後第二次呼叫函式來擷取名稱。 使用這項技術,您可以避免緩衝區大小不足所造成的錯誤。 這個參數是選擇性的。 如需詳細資訊,請參閱一節。

[in] Size

以字元為單位 ReturnBuffer 所指向之緩衝區的大小。 此數位包含終止 NULL 字元。

[out, optional] SizeNeeded

接收所指向之緩衝區所需大小的位置指標,ReturnBuffer。 大小會指定為儲存區段名稱所需的字元數,包括終止 NULL 字元。

傳回值

如果函式成功,則傳回值 TRUE

如果函式失敗,則傳回值 FALSE。 若要取得擴充的錯誤資訊,請呼叫 GetLastError

GetLastError 如果 enumerationIndex 的值大於或等於 INF 檔案中的區段名稱數目,則 getLastError 會傳回 ERROR_NO_MORE_ITEMS

言論

此函式可以列舉 INF 檔案中的所有唯一區段名稱。 如果在 INF 檔案中出現一次以上的區段名稱,函式只會使用單一列舉索引傳回名稱一次。 若要傳回 INF 檔案中的所有區段名稱,請呼叫以零的列舉索引開頭的函式,然後在遞增索引時對函式進行重複呼叫,直到函式傳回 FALSEGetLastError 傳回 ERROR_NO_MORE_ITEMS。 您的應用程式不應依賴根據列舉索引以任何順序傳回的區段名稱。

注意

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

要求

要求 價值
最低支援的用戶端 Windows XP [僅限傳統型應用程式]
支援的最低伺服器 Windows Server 2003 [僅限傳統型應用程式]
目標平臺 窗戶
標頭 setupapi.h
連結庫 Setupapi.lib
DLL Setupapi.dll
API 集 ext-ms-win-setupapi-inf-l1-1-1 (在 Windows 10 版本 10.0.14393 中引進)