ICE17

O ICE17 verifica as situações mostradas no exemplo no final deste tópico.

Result

O ICE17 exibe uma mensagem de erro ou aviso para cada uma das situações no exemplo. Exemplos dessas mensagens são mostrados na tabela a seguir.

Erro ou aviso do ICE17 Descrição
PushButton: Button1 of Dialog: MyDialog não tem um evento definido na tabela ControlEvent. Erro do
Há um controle Pushbutton que não está listado na tabela ControlEvent. Se o ICE17 retornar esse erro em um PushButton para o qual o atributo Habilitar Controle ou o atributo Controle Visível não estiver definido na coluna Attributes da tabela Control, verifique se o controle também tem uma entrada na tabela ControlCondition. O controle poderá ser habilitado ou ficar visível inesperadamente se o valor na coluna Condition for alterado para True, Enable ou Show.
Bitmap: Bitmap1 of Control: Bitmap1 of Dialog: MyDialog não está na tabela Binary. Erro do
Há um controle Bitmap ou controle Icon, mas o bitmap ou ícone correspondente não está listado na tabela Binary. Adicione o bitmap ou ícone à tabela Binary.
RadioButtonGroup: RadioButton1 of Control: RadioButton1 of Dialog: MyDialog não está na tabela RadioButton. Aviso
Há um controle RadioButtonGroup com valores na coluna Property e na coluna Attribute da tabela Control; o bit Indirect não está definido na coluna Attributes. O ICE17 posta um aviso porque o instalador usa o valor da propriedade como uma chave estrangeira na tabela RadioButton, mas o valor está ausente da chave primária dessa tabela. Se o bit Indirect estiver definido, a propriedade listada para o controle não será usada como a propriedade; em vez disso, ele é usado como o nome da propriedade que é realmente usada.
Esse aviso poderá ser ignorado se o controle for criado em runtime. Por exemplo, o controle ListBox para FilesInUse Dialog só será criado em runtime se houver arquivos em uso durante a instalação.
ListBox: ListBox1 of Control: ListBox1 of Dialog: MyDialog não está na tabela ListBox. Aviso
Há um controle ListBox com um valor na coluna Property da tabela Control e para o qual o bit Indirect não está definido na coluna Attributes. O ICE17 posta um aviso porque o instalador usa o valor da propriedade como uma chave estrangeira na tabela ListBox, mas o valor está ausente da chave primária dessa tabela. Se o bit Indirect estiver definido, o controle alterará o valor de uma propriedade com um nome que é o valor da propriedade associada a esse controle.
Esse aviso poderá ser ignorado se o controle for criado em runtime. Por exemplo, o controle ListBox para FilesInUse Dialog só será criado em runtime se houver arquivos em uso durante a instalação.
ComboBox: ComboBox1 of Control: ComboBox1 of Dialog: ByDialog não está no Warning da tabela ComboBox
Há um controle ComboBox com um valor na coluna Property da tabela Control e para o qual o bit Indirect não está definido na coluna Attributes. O ICE17 posta um aviso porque o instalador usa o valor da propriedade como uma chave estrangeira na tabela ComboBox, mas o valor está ausente da chave primária dessa tabela. Se o bit Indirect estiver definido, o controle alterará o valor de uma propriedade com um nome que é o valor da propriedade associada a esse controle.
Esse aviso poderá ser ignorado se o controle for criado em runtime. Por exemplo, o controle ListBox para FilesInUse Dialog só será criado em runtime se houver arquivos em uso durante a instalação.
ListView: ListView1 of Control: ListView1 of Dialog: MyDialog não está na tabela ListView. Aviso
Há um controle ListView com um valor na coluna Property da tabela Control e para o qual o bit Indirect não está definido na coluna Attributes. O ICE17 posta um aviso porque o instalador usa o valor da propriedade como uma chave estrangeira na tabela ListView, mas o valor está ausente da chave primária dessa tabela. Se o bit Indirect estiver definido, o controle alterará o valor de uma propriedade com um nome que é o valor da propriedade associada a esse controle.
Esse aviso poderá ser ignorado se o controle for criado em runtime. Por exemplo, o controle ListBox para FilesInUse Dialog só será criado em runtime se houver arquivos em uso durante a instalação.
Bitmap: 'Bitmap2' for Control: 'Button2' of Dialog: 'MyDialog' não encontrado no Error da tabela Binary
Há um controle Pushbutton ou controle Checkbox para o qual a coluna Text da tabela Control não contém uma chave estrangeira no registro da tabela Binary que contém o bitmap ou ícone.
Bitmap: 'Bitmap3' for Control: 'RadioButton2' of Dialog: 'MyDialog' não encontrado na tabela Binary ou
Icon: 'Icon1' for Control: 'RadioButton3' of Dialog: 'MyDialog' não encontrado na tabela Binary
Erro do
Há um controle RadioButtonGroup para o qual a coluna Text da tabela RadioButton não contém uma chave estrangeira no registro da tabela Binary que contém o bitmap ou ícone.
Picture control: 'Button3' of Dialog: 'MyDialog' tem os atributos Icon e Bitmap definidos Error
Há um controle PushButton, CheckBox ou RadioButtonGroup com o bit Icon ou Bitmap definido na coluna Attributes da tabela Control. Não é possível definir os dois atributos juntos.

 

Exemplo

Tabela Control (parcial)

Dialog_ Control Type Atributos Propriedade Texto
MyDialog Button1 PushButton 0 OK
MyDialog Bitmap1 Bitmap 0 Bitmap1
MyDialog RadioButton1 RadioButtonGroup 0 RadioButton1
MyDialog ListBox1 ListBox 0 ListBox1
MyDialog ComboBox1 ComboBox 0 ComboBox1
MyDialog ListView1 ListView 0 ListView1
MyDialog Button2 Pushbutton 262144 Bitmap2
MyDialog RadioButton2 RadioButtonGroup 262144 Property2
MyDialog RadioButton3 RadioButtonGroup 524288 Property3
MyDialog Button3 Pushbutton 786432 Ambiguous1

 

Tabela RadioButton (parcial)

Property_ Order Texto
Property2 1 Bitmap3
Property3 2 Icon1

 

As tabelas a seguir estão vazias:

Referência do ICE