ActiveDelphi - Índice do Fórum ActiveDelphi
.: O site do programador Delphi! :.
 
 FAQFAQ   PesquisarPesquisar   MembrosMembros   GruposGrupos   RegistrarRegistrar 
 PerfilPerfil   Entrar e ver Mensagens ParticularesEntrar e ver Mensagens Particulares   EntrarEntrar 

BPL Delphi7 [RESOLVIDO]

 
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Delphi
Exibir mensagem anterior :: Exibir próxima mensagem  
Autor Mensagem
jedi_pereira
Novato
Novato


Registrado: Segunda-Feira, 27 de Abril de 2009
Mensagens: 12

MensagemEnviada: Sex Mai 08, 2009 11:20 am    Assunto: BPL Delphi7 [RESOLVIDO] Responder com Citação

olá a todos,

estou com problema usando BPL.
tenho um Geral.BPL que me carrega alguns forms, entre eles o frmPropriedades.

e cada dispositivo que acrescento na arvore do meu programa tem sua BPL (ex: dispositivo X -> x.bpl). Quando clico no dispositivo X na arvore, o frmPropriedades da geral deve ser destruido e o frmPropriedades do X deve ser criado no lugar, mas o programa da erro, falando que frmPropriedades já existe, claro. E mudar o nome pra frmPropriedadesX, funciona, porém, se tiver 100 dispositivos, precisarei de 100 metodos para abrir frmPropriedades.

estou usando freeandnil(frmPropriedades), mas msm assim, da erro no final da criação do novo pacote.

alguem me salva ai hehehe


Editado pela última vez por jedi_pereira em Ter Mai 12, 2009 10:53 am, num total de 1 vez
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
AnOnImUs.Info
Colaborador
Colaborador


Registrado: Quinta-Feira, 23 de Agosto de 2007
Mensagens: 1119
Localização: Goiânia - GO

MensagemEnviada: Sex Mai 08, 2009 5:37 pm    Assunto: Re: BPL Delphi7 Responder com Citação

os demais forms de sua aplicação herdarao desse frmPropriedades?

porque se for voce teria de criar realmente um novo form com o nome diferente e so herdar os eventos e propriedades do frmPropriedades.

na nova bpl voce apenas adicionaria a referencia de onde ele iria herdar o form... incluindo no requires a DCP do frmPropriedades

se voce colocar dois frmPropriedades em bpls diferentes ele realmente ira acusar que ja existe, pois ele tentara abrir duas vezes o mesmo form.

bom... pelo menos foi isso que eu entendi.
_________________
Reter o conhecimento é promover a ignorância !
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
jedi_pereira
Novato
Novato


Registrado: Segunda-Feira, 27 de Abril de 2009
Mensagens: 12

MensagemEnviada: Ter Mai 12, 2009 9:45 am    Assunto: Responder com Citação

solução que encontrei (Pacote: HModule):
procedure TfrmMain.CriaPacote2(s: string);
var
sFile: string;
begin
sFile := 'E:\Projetos\Net Config\BPL e XML\'+ s +'.bpl';
if FileExists(sFile) then
begin
Pacote := LoadPackage(sFile);
end;
end;

procedure TfrmMain.AbrirFormPropriedades;
var
APersistentClass: TPersistentClass;
begin
APersistentClass := GetClass('TfrmPropriedades');
if APersistentClass = nil then
begin
ShowMessage('FormPropriedades não localizado!');
end
else
begin
frmProp := TComponentClass(APersistentClass).Create(Application) as TForm;
frmProp.Show;
frmProp.ManualDock(pnlCentralDesign,nil,alClient);
end;
end;

procedure TfrmMain.DescarregaPacote(Module: HModule);
begin
UnRegisterModuleClasses(Module);
UnLoadPackage(Module);
end;

desculpa a demora, mas o site não gosta do meu Firefox

vlw
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
Mostrar os tópicos anteriores:   
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Delphi Todos os horários são GMT - 3 Horas
Página 1 de 1

 
Ir para:  
Enviar Mensagens Novas: Proibido.
Responder Tópicos Proibido
Editar Mensagens: Proibido.
Excluir Mensagens: Proibido.
Votar em Enquetes: Proibido.


Powered by phpBB © 2001, 2005 phpBB Group
Traduzido por: Suporte phpBB