Aplicar uma transformação
O arquivo VBScript WiUseXfm.vbs é fornecido nos Componentes do SDK do Windows para desenvolvedores do Windows Installer. Este exemplo mostra como o script pode ser usado para aplicar uma transformação a um banco de dados do Windows Installer.
Este exemplo demonstra o uso de:
- Método OpenDatabase (objeto Installer)
- Método LastErrorRecord do objeto Installer
- Método ApplyTransform
- Método Commit do objeto Database
Será necessária a versão CScript.exe ou WScript.exe do Windows Script Host para usar este exemplo. Para usar CScript.exe para executar este exemplo, digite uma linha de comando no prompt de comando usando a sintaxe a seguir. A ajuda será exibida se o primeiro argumento for /? ou se poucos argumentos forem especificados. Para redirecionar a saída para um arquivo, encerre a linha de comando com VBS > [caminho para o arquivo]. O exemplo retorna um valor 0 para êxito, 1 se a ajuda for chamada e 2 se o script falhar.
cscript WiUseXfm.vbs [caminho para banco de dados original][caminho para arquivo de transformação][opções]
Especifique o caminho para o banco de dados do Windows Installer. Especifique o caminho para o arquivo de transformação. Se o caminho para o arquivo de transformação for omitido, os dois bancos de dados serão apenas comparados. O terceiro argumento é um valor numérico opcional que especifica um conjunto de condições de erro que devem ser suprimidas. Adicione esses valores juntos para suprimir várias condições.
Valor | Condição de erro a ser suprimida |
---|---|
1 | Adição de uma linha que já existe. |
2 | Exclusão de uma linha que não existe. |
4 | Adição de uma tabela que já existe. |
8 | Exclusão de uma tabela que não existe. |
16 | Atualização de uma linha que não existe. |
256 | Incompatibilidade de páginas de código de transformação e banco de dados. |
Para ver mais exemplos de script, confira Exemplos de script do Windows Installer. Para os utilitários de exemplo que não exigem o Windows Script Host, consulte as Ferramentas de desenvolvimento do Windows Installer.