Migrando do Delphi 7 para o 2010
Boa tarde,
Estou migrando do Delphi 7 para o Delphi 2010, estou tendo problema com um componente, quando compilei o componente eu adicionei no require o designide.dcp, ele compilou normalmente. Mas quando vou compilar o aplicativo que usa esse componente ele diz que não é possível encontrar o arquivo DesignEditors.dcu, entre nas opções do projeto na parte de packages e marquei a opção Build with runtime packages e deixei somente a Designide. No meu micro onde tem o delphi ele roda normalmente mas quando vou rodar em outro micro ele fala que não encontrou a rtl170.bpl. Como faço para resolver?
Obrigado
João Victor
Estou migrando do Delphi 7 para o Delphi 2010, estou tendo problema com um componente, quando compilei o componente eu adicionei no require o designide.dcp, ele compilou normalmente. Mas quando vou compilar o aplicativo que usa esse componente ele diz que não é possível encontrar o arquivo DesignEditors.dcu, entre nas opções do projeto na parte de packages e marquei a opção Build with runtime packages e deixei somente a Designide. No meu micro onde tem o delphi ele roda normalmente mas quando vou rodar em outro micro ele fala que não encontrou a rtl170.bpl. Como faço para resolver?
Obrigado
João Victor
João Victor
Curtidas 0
Respostas
Alex Constâncio
08/05/2013
Caro João Victor
Este packages DesignIDE, somente pode ser utilizado dentro do Delphi e por este motivo somente pode estar presente em packages de design. Este packages servem para registrar os packages de runtime e os componentes que estes implementam, além de eventuais editores de componente e de propriedade ou assistentes e extensões ao IDE do Delphi.
Se o package DesignIDE figurar entre os requires de um package de runtime, uma aplicação compilada com ele passará a depender de DesignIDE e tentará carregá-lo, assim como suas units, gerando o erro que você comentou.
Para evitar problemas deste tipo normalmente o que se faz é implementar os recursos de runtime de um componente no package de runtime (sem DesignIDE) e os recursos de design em um package de design, dependente do primeiro e do DesignIDE.
O seu componente respeita esta arquitetura de dois packages?
Este packages DesignIDE, somente pode ser utilizado dentro do Delphi e por este motivo somente pode estar presente em packages de design. Este packages servem para registrar os packages de runtime e os componentes que estes implementam, além de eventuais editores de componente e de propriedade ou assistentes e extensões ao IDE do Delphi.
Se o package DesignIDE figurar entre os requires de um package de runtime, uma aplicação compilada com ele passará a depender de DesignIDE e tentará carregá-lo, assim como suas units, gerando o erro que você comentou.
Para evitar problemas deste tipo normalmente o que se faz é implementar os recursos de runtime de um componente no package de runtime (sem DesignIDE) e os recursos de design em um package de design, dependente do primeiro e do DesignIDE.
O seu componente respeita esta arquitetura de dois packages?
GOSTEI 0