DismAddPackage 函式
將單一.cab或 .msu 檔案新增至 Windows 映像。
語法
HRESULT WINAPI DismAddPackage(
_In_ DismSession Session,
_In_ PCWSTR PackagePath,
_In_ BOOL IgnoreCheck,
_In_ BOOL PreventPending,
_In_opt_ HANDLE CancelEvent,
_In_opt_ DISM_PROGRESS_CALLBACK Progress,
_In_opt_ PVOID UserData
);
參數
會話 [in]
有效的 DismSession。 DismSession 必須與映射相關聯。 您可以使用 DismOpenSession將會話與映射產生關聯。
PackagePath [in]
要新增之.cab或 .msu 檔案的相對或絕對路徑,或包含單一.cab檔案之展開檔案的資料夾。
IgnoreCheck [in]
布林值,指定是否要忽略新增套件時完成的內部適用性檢查。
值 | 描述 |
---|---|
true | 忽略內部適用性檢查。 |
false | 請勿忽略內部適用性檢查。 |
PreventPending [in]
布林值,指定是否要在套件有擱置的線上動作時新增套件。
值 | 描述 |
---|---|
true | 防止安裝具有擱置線上動作的套件。 |
FALSE | 允許安裝具有擱置線上動作的套件。 |
CancelEvent [in, optional]
選擇性。 您可以設定此函式的 CancelEvent ,以便在用戶端發出訊號時取消進行中的作業。 如果在無法取消作業的階段收到 CancelEvent ,作業將會繼續並傳回成功碼。 如果收到 CancelEvent 且作業已取消,映射狀態為未知。 您應該先確認映射狀態,再繼續或捨棄變更,然後再開始一次。
進度 [in, 選擇性]
選擇性。 用戶端定義 DismProgressCallback的指標。
UserData [in, optional]
選擇性。 使用者定義的自訂資料。
傳回值
成功時會傳回 S_OK
。
備註
只有.cab檔案可以新增至線上映射。 .cab 或 .msu 檔案都可以新增至離線映射。
如果套件不適用,此函式會傳回特殊的錯誤碼。 您可以使用 DismGetPackageInfo 來判斷套件是否適用于目標映射。
範例
HRESULT hr = S_OK;
hr = DismAddPackage(Session, "C:\\packages\\calc.cab", FALSE, FALSE, NULL, NULL, NULL);
規格需求
需求 | 描述 |
---|---|
支援的主機平臺 | DISM API 可用於 Windows 評定與部署套件所支援的任何作業系統, (Windows ADK) 。 如需詳細資訊,請參閱 Windows ADK 技術參考。 |
支援的映射平臺 | Windows 7、Windows Server 2008 R2、Windows PE 3.0、Windows 8、Windows Server 2012、Windows 預先安裝環境 (Windows PE) 4.0、Windows 8.1、Windows Server 2012 R2、Windows 10、Windows Server 2016 |
最低支援的用戶端 | Windows 7 [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2008 R2 [僅限傳統型應用程式] |
標頭 | DismAPI.h |
程式庫 | DismAPI.lib |
DLL | DismAPI.dll |