共用方式為


SetupSetDirectoryIdExA 函式 (setupapi.h)

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

SetupSetDirectoryIdEx 函式會將 INF 檔案中的目錄識別碼與特定目錄產生關聯。

語法

WINSETUPAPI BOOL SetupSetDirectoryIdExA(
  [in] HINF  InfHandle,
  [in] DWORD Id,
  [in] PCSTR Directory,
  [in] DWORD Flags,
       DWORD Reserved1,
       PVOID Reserved2
);

參數

[in] InfHandle

載入 INF 檔案的句柄。

[in] Id

要用於關聯的目錄標識碼 (DIRID) 。 此參數可以是 Null。 此 DIRID 必須大於或等於DIRID_USER。 如果此 DIRID 已存在關聯,則會覆寫它。 如果 Id 為零,則會忽略 Directory 參數,並刪除目前的使用者定義 DIRID 集合。

[in] Directory

Null 終止字串的指標,指定要與標識元建立關聯的目錄路徑。此參數可以是 NULL。 如果 DirectoryNULL,則與 標識符 相關聯的任何目錄都未關聯。 如果 標識碼 目前未與目錄相關聯,則不會產生任何錯誤。

[in] Flags

此參數可以設定為 SETDIRID_NOT_FULL_PATH ( 1) ,表示 Directory 未指定完整路徑。

Reserved1

如果此參數的值不是零,則函式會傳回ERROR_INVALID_PARAMETER。

Reserved2

如果此參數的值不是零,則函式會傳回ERROR_INVALID_PARAMETER。

傳回值

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

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

備註

SetupSetDirectoryIdEx 可以在佇列檔案複製作業之前使用,以指定只在運行時間知道的目標位置。

設定目錄標識符之後,此函式會周游所有附加的 INF 檔案,如果其中任何一個檔案都有無法解析的字串替代,則函式會嘗試根據新的 DIRID 對應重新套用字元串替代。 因此,某些 INF 值可能會在呼叫 SetupSetDirectoryIdEx 之後變更。

DIRID_ABSOLUTE_16BIT不是 Id的有效值,可確保與16位設定相容。

注意

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

規格需求

需求
最低支援的用戶端 Windows XP [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2003 [僅限傳統型應用程式]
目標平台 Windows
標頭 setupapi.h
程式庫 Setupapi.lib
Dll Setupapi.dll

請參閱

函式

概觀