ICE67
O ICE67 verifica se o destino de um atalho não anunciado pertence ao mesmo componente que o próprio atalho ou se os atributos do componente de destino garantem que ele não altere os locais de instalação.
A falha ao corrigir um aviso ou erro relatado pelo ICE67 pode fazer com que o atalho seja inválido se o componente de destino mudar de estado e o componente de origem não. Por exemplo, quando o componente do arquivo de destino é definido para ser executado a partir da origem, uma reinstalação que altera o componente para local resulta no componente que contém o atalho não sendo reinstalado. Assim, o atalho aponta para um local inválido.
Observe que, em alguns casos, usar um componente diferente para o atalho é inevitável. Por exemplo, se o atalho for criado no perfil de usuário e o arquivo for instalado em um diretório sem perfil, talvez não seja possível usar o mesmo componente para ambas as partes de dados. (Isso resulta em falhas em cenários multiusuário – como os descritos em ICE57). Nesse caso, você poderá usar atalhos anunciados para alcançar o comportamento desejado ou simplesmente garantir que o componente de destino não possa mudar de run-from-source para local.
Resultado
ICE67 retorna um erro ou um aviso se o destino de um atalho não anunciado não pertence ao mesmo componente que o próprio atalho ou se os atributos do componente de destino não garantem que os locais de instalação não serão alterados.
Exemplo
O ICE67 relata o seguinte aviso e erros para o exemplo mostrado.
The shortcut 'Shortcut1' is a non-advertised shortcut with a file target. The shortcut and target are installed by different components, and the target component can run locally or from source.
Shortcut1 é instalado por Component2, mas seu arquivo de destino, File1, é instalado por component1. O componente de destino é marcado como opcional (o que significa que pode ser local ou executado a partir da fonte). Uma situação possível que causaria um problema é se o Component1 mudar de run-from-source para local. Isso faria com que Shortcut1 apontasse para um local inválido.
Para corrigir esse aviso, instale o atalho como parte de Component1 ou marque Component1 como LocalOnly ou SourceOnly.
Tabela de Ficheiros (parcial)
Ficheiro | Component_ |
---|---|
Ficheiro1 | Componente1 |
Tabela de atalho (parcial)
Atalho | Component_ | Público-alvo |
---|---|---|
Atalho1 | Componente2 | [#File1] |
Tabela de componentes (parcial)
Componente | Atributos |
---|---|
Componente1 | 2 |
Tópicos relacionados