共用方式為


SetupGetInfFileListA 函式 (setupapi.h)

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

SetupGetInfFileList 函式會將位於呼叫端指定目錄的 INF 檔案清單傳回給呼叫提供的緩衝區。

語法

WINSETUPAPI BOOL SetupGetInfFileListA(
  [in]      PCSTR  DirectoryPath,
  [in]      DWORD  InfStyle,
  [in, out] PSTR   ReturnBuffer,
  [in]      DWORD  ReturnBufferSize,
  [in, out] PDWORD RequiredSize
);

參數

[in] DirectoryPath

null 的選擇性指標-terminated 字串,其中包含要搜尋之目錄的路徑。 如果此值 NULL,則會使用 %windir%\inf 目錄。

[in] InfStyle

要搜尋的 INF 檔案類型。 可能是下列旗標的組合。

INF_STYLE_OLDNT

舊版 INF 檔案格式。

INF_STYLE_WIN4

Windows INF 檔案格式。

[in, out] ReturnBuffer

如果未 NULL,則指向緩衝區,在此緩衝區中,此函式會傳回指定子目錄中找到之所需樣式的所有 INF 檔案清單。 檔名 null終止,清單結尾有額外的 nullnull終止字串不應超過目的地緩衝區的大小。 您可以呼叫函式一次以取得所需的緩衝區大小、配置必要的記憶體,然後第二次呼叫函式來擷取數據。 使用這項技術,您可以避免因為緩衝區大小不足而發生錯誤。 檔名不包含路徑。 請參閱一節。

[in] ReturnBufferSize

ReturnBuffer 參數所指向的緩衝區大小,以字元為單位。 這包括 null 終止符。 如果未指定 returnBuffer ,則會忽略 ReturnBufferSize

[in, out] RequiredSize

如果未 NULL,則指向變數,在此變數中,此函式會傳回 ReturnBuffer 參數所指向之緩衝區所需的大小,以字元為單位。 這包括 null 終止符。 如果指定 ReturnBuffer,而且所需的大小大於 returnBufferSize ,則函式會失敗,而且 傳回ERROR_INSUFFICIENT_BUFFER GetLastError 的呼叫。

傳回值

如果函式成功,則傳回值是非零值。

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

言論

如果呼叫此函式的 ReturnBuffer NULLReturnBufferSize 為零,則函式會將所需的緩衝區大小放入 requiredSize 所指向的變數中,RequiredSize所指向的變數。 如果函式成功,則傳回值是非零值。 否則,傳回值為零,而且可以呼叫 getLastError取得擴充錯誤資訊。

如果此函式傳回多個 INF 檔案樣式,則可以呼叫 setupGetInfInformation 函式來判斷特定 INF 檔案的樣式

注意

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

要求

要求 價值
最低支援的用戶端 Windows XP [僅限傳統型應用程式]
支援的最低伺服器 Windows Server 2003 [僅限傳統型應用程式]
目標平臺 窗戶
標頭 setupapi.h
連結庫 Setupapi.lib
DLL Setupapi.dll

另請參閱

函式

概觀

SetupGetInfInformation