ICE12
ICE12 consulta las tablas CustomAction, Directory, AdminExecuteSequence, AdminUISequence, AdvtExecuteSequence, InstallExecuteSequence e InstallUISequence para validar lo siguiente:
- La acción CostFinalize se produce en cualquier tabla de secuencia que contenga acciones de los tipos Tipo de acción personalizada 35 o Tipo de acción personalizada 51.
- Cada Tipo de acción personalizada 35 sucede después de la acción CostFinalize en las tablas de secuencia.
- Cada Tipo de acción personalizada 51 que tiene una clave externa a la tabla Directory en la columna Source de la tabla CustomAction sucede antes de la acción CostFinalize en las tablas de secuencia.
ICE12 no valida el texto con formato de la columna Target de la tabla CustomAction.
Resultado
ICE12 muestra un mensaje de error si no se pueden validar las acciones personalizadas que establecen una propiedad de directorio.
Ejemplo
ICE12 mostraría tres errores en el ejemplo mostrado.
- En CA1, no se encuentra la carpeta "MyFolder" en la tabla Directory.
- En CA2, la secuencia "80" sucede antes que CostFinalize en la tabla InstallExecuteSequence, cuando debería ir después (CF@100).
- En CA3, la secuencia "125" sucede después que CostFinalize en la tabla InstallExecuteSequence, cuando debería ir antes (CF@100).
Tabla CustomAction (parcial)
Acción | Tipo | Source |
---|---|---|
CA1 | 35 | MyFolder |
CA2 | 35 | WindowsFolder |
CA3 | 51 | WindowsFolder |
Directorio | Directory_Parent | DefaultDir |
---|---|---|
TARGETDIR | SourceDir | |
WindowsFolder | TARGETDIR | WindowsFolder |
Tabla InstallExecuteSequence (parcial)
Acción | Secuencia |
---|---|
CostFinalize | 100 |
CA2 | 80 |
CA3 | 125 |
Para corregir el error de CA1, cambie la entrada en su columna Source correspondiente de la tabla CustomAction por una entrada existente en la tabla Directory, o agregue MyFolder a la tabla Directory.
Para corregir el error de CA2, cambie su secuencia en la tabla InstallExecuteSequence de modo que suceda después de la acción CostFinalize.
Para corregir el error de CA3, cambie su secuencia en la tabla InstallExecuteSequence de modo que suceda antes de la acción CostFinalize.
Temas relacionados