建立 DISM 應用程式

您可以在已安裝 Windows 評定與部署套件的任何電腦上,使用 DISM API 來開發應用程式, (Windows ADK) 。

設定開發環境

  1. 將 DismApi.lib 的路徑新增為專案連結器輸入屬性中的其他相依性。

    根據預設,DismApi.lib 會隨 Windows ADK 一起安裝在 C:\Program Files (x86) \Windows Kits\8.0\Assessment and Deployment Kit\Deployment and Imaging Tools\SDKs\DismApi\Lib\。

  2. 將 DismApi.h 的路徑新增至專案的資源屬性。

    根據預設,DismApi.h 會與 Windows ADK 一起安裝,網址為 C:\Program Files (x86) \Windows Kits\8.0\Assessment and Deployment Kit\Deployment and Imaging Tools\SDKs\DismApi\Include\。

  3. 在您的程式碼中包含 DISM API 標頭檔 DismApi.h。

必要的 DISM API 函式

所有 DISM API 進程都必須以 DismInitialize 函 式開頭,才能對 DISM API 進行任何其他呼叫。 相反地, DismShutdown 函式 是用來結束進程。

若要服務離線映射,請在開啟 DISM 會話之前,使用 DismMountImage 函式 將影像的內容對應至本機電腦上的目錄。

您可以藉由呼叫DismOpenSession 函式,將離線或線上 Windows 映像與DISMSession產生關聯。 映射上的所有維護與修復作業都是使用 DISMSession 來執行。 在映射上運作的所有 API 都會接受 DismSession 作為其第一個參數。 您可以呼叫 DismCloseSession 函 式來釋放 DismSession,然後在您使用離線映射完成時呼叫 DismUnmountImage 函式

某些作業不需要 DISM 會話。 其中包括 DismGetImageInfo 函式、 DismGetMountedImageInfo 函式、 DismRemountImage 函式、 DismCleanupMountpoints 函式DismGetLastErrorMessage函式和 DismDelete 函式。 呼叫 DismInitialize 函 式之後,任何時間點都可以使用這些作業。

如需基本 DISM 應用程式的範例,請參閱 DISM API 範例

使用配對的 DISM API 來開啟和關閉進程

  1. 若要啟動 DISM 進程,請呼叫 DismInitialize 函式

  2. 如果您使用離線映射,請呼叫 DismMountImage 函式

  3. 使用 DismInitialize 函式啟動程式之後,您可以呼叫不需要 DISM 會話的任何函式,例如 DismGetMountedImageInfo 函式。

  4. 如果您想要服務映射,請先呼叫DismOpenSession 函式,將離線或線上 Windows 映像與DISMSession產生關聯。

  5. 您現在可以執行任何使用 DISM 會話的映射管理或服務作業,例如 DismAddPackage 函式

    如需可用函式的詳細資訊,請參閱 DISM API 函式

  6. 使用 DismCommitImage 函式儲存變更。

  7. 如果您有任何開啟的會話,請使用每個會話的 DismCloseSession 函 式來釋放會話,並釋放配置的記憶體。

  8. 如果您已完成使用離線映射,請呼叫 DismUnmountImage 函式 ,從本機電腦移除掛接的映射。

  9. 若要關閉程式,請使用 DismShutdown 函式

DISM API 範例Samples