Ação RemoveFiles
A ação RemoveFiles remove os arquivos instalados anteriormente pela ação InstallFiles. Cada um desses arquivos é restrito por um link a uma entrada na tabela Component. Somente os arquivos com os componentes resolvidos para o estado msiInstallStateAbsent ou o estado msiInstallStateLocal se o componente estiver instalado localmente serão removidos.
Restrições de sequência
A ação InstallValidate precisa ser chamada antes da chamada a RemoveFiles. Se uma ação InstallFiles for usada, ela precisará aparecer após RemoveFiles.
Mensagens de ActionData
Campo | Descrição dos dados de ação |
---|---|
[1] | Identificador do arquivo removido. |
[9] | Identificador do diretório que contém o arquivo removido. |
Comentários
A tabela RemoveFile poderá ser omitida do banco de dados do instalador se não houver arquivos diversos a serem removidos.
A ação RemoveFiles também pode remover arquivos especificados pelo autor que não estão instalados pela ação InstallFiles. Esses arquivos são especificados na tabela RemoveFile. Cada um desses arquivos é restrito por um link a uma entrada na tabela Component. Esses arquivos cujos componentes são resolvidos como qualquer estado de Action ativo (ou seja, não no estado Off ou Null) serão removidos se o arquivo existir no diretório especificado. Uma tentativa de remoção de arquivos especificados na tabela RemoveFile é feita quando o componente vinculado é instalado pela primeira vez, durante uma reinstalação e novamente quando o componente vinculado é removido.
A ação RemoveFiles também pode remover pastas. Uma pasta vazia será removida se o valor na coluna FileName da tabela RemoveFile for nulo.
Ao remover arquivos instalados anteriormente, a ação RemoveFiles consulta os mesmos campos nas mesmas tabelas que aquelas consultados pela ação InstallFiles, com a exceção de que a tabela Media não é usada pela ação RemoveFiles.
O nome do arquivo de destino pode ser especificado em um texto localizado na coluna FileName da tabela RemoveFile.