segunda-feira, 28 de novembro de 2011

Desaparecimento de componentes no Delphi XE2


Estava realizando testes com o Delphi XE2 e percebi que alguns componentes como TLocalConnection e TSharedConnection não eram exibidos na barra de componentes para serem adicionado ao um DataModule. Istotambém ocorreu com os componentes da palheta DataSnap Server e DataSnap Client. No entanto para projetos datasnap criados a partir do assistente do Delphi o "problema" não ocorreu. Após analisar o datamodule criado pelo assiste e o datamodule criado normalmente notei a existência de uma nova propriedade do datamodule - ClassGroup. Quando o datamodule é criado pelo assistente o valor dela é vazio, já quando criado normalmente seu valor é System.Classes.TPersistent. 

Esse é o motivo pelo qual os componentes não aparecem. A IDE gera esse valor na unit e não do dfm como de costume (veja figuras abaixo).

Para resolver o "problema" você deve apagar a linha da unit ou alterar o valor da propriedade para Vcl.Controls.TControl. Ainda não entendi a usabilidade desta propriedade, mas já me adiantei em relatar o "problema" para que ninguém perca tempo procurando por algum bug no Delphi XE2.