Criar um aplicativo DISM
Você pode desenvolver aplicativos usando a API DISM em qualquer computador em que tenha instalado o Windows ADK (Kit de Avaliação e Implantação do Windows).
Configurar o ambiente de desenvolvimento
Adicione o caminho a DismApi.lib como uma dependência adicional nas propriedades de entrada do vinculador do projeto.
Por padrão, o DismApi.lib é instalado com Windows ADK em C:\Program Files (x86)\Windows Kits\8.0\Assessment and Deployment Kit\Deployment and Imaging Tools\SDKs\DismApi\Lib\.
Adicione o caminho para DismApi.h às propriedades do recurso do seu projeto.
Por padrão, o DismApi.h é instalado com Windows ADK em C:\Program Files (x86)\Windows Kits\8.0\Assessment and Deployment Kit\Deployment and Imaging Tools\SDKs\DismApi\Include\.
Inclua o arquivo de cabeçalho da API DISM, DismApi.h, em seu código.
Funções necessárias da API DISM
Todos os processos da API DISM devem começar com a função DismInitialize antes que qualquer outra chamada à API DISM possa ser feita. Por outro lado, a função DismShutdown é usada para encerrar um processo.
Para atender a uma imagem offline, use a função DismMountImage para mapear o conteúdo da imagem para um diretório no computador local antes de abrir uma sessão DISM.
Você pode associar uma imagem offline ou online do Windows a uma DISMSession chamando a função DismOpenSession. Todas as operações de manutenção e reparo em imagens são executadas usando uma DISMSession. Todas as APIs que operam em uma imagem aceitam uma DismSession como seu primeiro parâmetro. Você pode chamar a função DismCloseSession para liberar uma DismSession e, em seguida, chamar a função DismUnmountImage se terminar de usar a imagem offline.
Algumas operações não exigem uma sessão DISM. Elas incluem a função DismGetImageInfo, a função DismGetMountedImageInfo, a função DismRemountImage, a função DismCleanupMountpoints, a função DismGetLastErrorMessage e a função DismDelete. Essas operações podem ser usadas a qualquer momento após a chamada da função DismInitialize.
Para obter um exemplo de um aplicativo DISM básico, consulte Exemplos de APIs DISM.
Usar APIs DISM emparelhadas para abrir e fechar processos
Para iniciar um processo DISM, chame a função DismInitialize.
Se você estiver usando uma imagem offline, chame a função DismMountImage.
Você pode chamar todas as funções que não exigem uma sessão DISM, como a função DismGetMountedImageInfo, depois de iniciar o processo com a função DismInitialize.
Se desejar atender a uma imagem, primeiro associe uma imagem offline ou online do Windows a uma DISMSession chamando a função DismOpenSession.
Agora você pode executar qualquer operação de gerenciamento ou manutenção de imagens que use uma sessão DISM, como a função DismAddPackage.
Para obter mais informações sobre as funções disponíveis, consulte Funções da API DISM.
Salve suas alterações usando a função DismCommitImage.
Se você tiver sessões abertas, use a função DismCloseSession para cada uma delas a fim de liberar a sessão e a memória alocada.
Se você tiver terminado de usar uma imagem offline, chame a Função DismUnmountImage para remover a imagem montada do computador local.
Para fechar o processo, use a Função DismShutdown.