Fórum RegisterClass inoperante em package #448689
16/07/2013
0
O projeto tem duas partes bem distintas: Framework e Classes de negócios.
RegisterClass é utilizado em ambas as partes para ser usada por uma fábrica de objetos. Quando construo o executável with run-time packages, as especializações da classe de serviços de transações do framework, para ADO e DBX, apenas elas, não estão sendo registradas; o RegisterClass, que é executado antes do Application.Initialize, não passa por ali.
Uma característica me chamou a atenção agora que reproduzo as declarações das classes: a cláusula abstract:
TFwkSrvTransaction = class abstract(TInterfacedPersistent)
TFwkSrvTransactionADO = class abstract(TFwkSrvTransaction)
TFwkSrvTransactionDBX = class abstract(TFwkSrvTransaction)
Será ela a responsável pelo bug? Já eliminei a cláusula da classe ancestral, mas não das filhas. Vou testar, mas publico a dúvida para que alguém com mais conhecimento possa comentar sobre RegisterClass e TInterfacedPersistent: quando são necessárias, quais as regras básicas para evitar os erros mais comuns?
Grato pela atenção.
Henrique
RegisterClass é utilizado em ambas as partes para ser usada por uma fábrica de objetos. Quando construo o executável with run-time packages, as especializações da classe de serviços de transações do framework, para ADO e DBX, apenas elas, não estão sendo registradas; o RegisterClass, que é executado antes do Application.Initialize, não passa por ali.
Uma característica me chamou a atenção agora que reproduzo as declarações das classes: a cláusula abstract:
TFwkSrvTransaction = class abstract(TInterfacedPersistent)
TFwkSrvTransactionADO = class abstract(TFwkSrvTransaction)
TFwkSrvTransactionDBX = class abstract(TFwkSrvTransaction)
Será ela a responsável pelo bug? Já eliminei a cláusula da classe ancestral, mas não das filhas. Vou testar, mas publico a dúvida para que alguém com mais conhecimento possa comentar sobre RegisterClass e TInterfacedPersistent: quando são necessárias, quais as regras básicas para evitar os erros mais comuns?
Grato pela atenção.
Henrique
José Silva
Curtir tópico
+ 0
Responder
Clique aqui para fazer login e interagir na Comunidade :)