Ação InstallFiles
A ação InstallFiles copia os arquivos especificados na tabela File do diretório de origem para o diretório de destino.
Restrições de sequência
A ação InstallFiles deve vir após a ação InstallValidate e antes de qualquer ação dependente de arquivo.
Mensagens ActionData
Domínio | Descrição dos dados da ação |
---|---|
[1] | Identificador do ficheiro instalado. |
[6] | Tamanho do arquivo instalado em bytes. |
[9] | Identificador do diretório que contém o arquivo instalado. |
Comentários
A ação InstallFiles opera em arquivos especificados na tabela File. Cada arquivo é instalado com base no estado de instalação do componente associado do arquivo na tabela Componente . Somente os arquivos cujos componentes são resolvidos para o estado de msiInstallStatelocal são elegíveis para cópia.
A ação InstallFiles implementa as seguintes colunas da tabela Arquivo.
- A coluna FileName especifica o nome do arquivo de destino.
- A coluna Versão especifica a versão do arquivo.
- A coluna Atributos especifica os bits do sinalizador de atributo de arquivo e instalação.
- A coluna Arquivo especifica o token de arquivo exclusivo.
- A coluna FileSize especifica o tamanho do arquivo não compactado em bytes.
- A coluna Idioma especifica o identificador de idioma do arquivo.
- A coluna Sequência especifica o número de sequência na mídia.
A ação InstallFiles implementa as seguintes colunas da tabela Componente.
- A coluna Directory_ especifica uma referência a uma tabela item do Directory.
- A coluna Componente especifica um nome exclusivo para o item do componente.
O arquivo especificado será copiado somente se uma das seguintes opções for verdadeira:
- O ficheiro não está atualmente instalado no computador local.
- O arquivo está no computador local, mas tem um número de versão menor do que o arquivo na tabela Arquivo .
- O arquivo está no computador local, mas não há nenhum número de versão associado.
O diretório de origem de cada arquivo a ser copiado é determinado pelo sourceMode, que, por sua vez, depende do valor na coluna Cabinet da tabela Media. Para obter uma discussão completa sobre o modo de origem, consulte a tabela Media.
Se o diretório de origem de um arquivo a ser copiado residir em mídia removível, como um disquete ou CD-ROM, a ação InstallFiles verificará se a mídia de origem adequada está inserida antes de tentar copiar o arquivo. O InstallFiles procura mídia do mesmo tipo removível com um volume rótulo que corresponde ao valor fornecido na coluna VolumeLabel da tabela Media. Se for encontrado um volume montado correspondente, o processo de cópia do ficheiro prossegue. Se nenhuma correspondência for encontrada, uma caixa de diálogo solicitará que o usuário insira a mídia adequada. Nesse caso, a caixa de diálogo usa o nome da mídia encontrado na coluna DiskPrompt da tabela Media como parte do prompt.
Deve-se ter cuidado porque a ação InstallFiles pode excluir um arquivo original e não substituí-lo. Isso ocorre quando a ação InstallFiles enfrenta um erro ao substituir um arquivo mais antigo e o usuário opta por ignorar o erro. O comportamento padrão do instalador é excluir um arquivo antigo antes de garantir que o novo arquivo seja copiado corretamente.
Para obter as regras de controle de versão de arquivo usadas pelo instalador, consulte File Versioning Rules.