Ir para conteúdo
Fórum Script Brasil
  • 0

Unindo Projetos Em Um


Jesus

Pergunta

Tenho 3 projetos em Delphi 5, cada um deles forma um programa, eles estão divididos em pastas (cada projeto com a sua).

Eu gostaria de juntar os três projetos e formar um único executável porém quero continuar com as pastas e projetos independentes um do outros.

Para isso pensei em colocar uma barra lateral em um novo formulário com 3 botões, cada botão abriria ao lado (no mesmo formulario) a página inicial de cada projeto.

Não sei como fazer isso. Alguém sabe?

Link para o comentário
Compartilhar em outros sites

10 respostass a esta questão

Posts Recomendados

  • 0
Guest --Jonas --
Tenho 3 projetos em Delphi 5, cada um deles forma um programa, eles estão divididos em pastas (cada projeto com a sua).

Eu gostaria de juntar os três projetos e formar um único executável porém quero continuar com as pastas e projetos independentes um do outros.

Para isso pensei em colocar uma barra lateral em um novo formulário com 3 botões, cada botão abriria ao lado (no mesmo formulario) a página inicial de cada projeto.

Não sei como fazer isso. Alguém sabe?

Colega, você não pode ajuntar 3 projetos, mas pode ajuntar em um unico os outros 2 , para isto use a oção do menu do delphi Project < Add to Project ... > e adicione os forms dos outros projetos, e no menu voce coloca os controles para estes forms..ok ?

Link para o comentário
Compartilhar em outros sites

  • 0

Obrigado pela ajuda ;)

Mas não da certo. Já tentei. Eu teria que adicionar todos os forms de todos os formularios.

Ao criar um novo projeto e adicionar desta maneira ocasiona:

1.conflito entre formulários de projetos diferentes com o mesmo nome;

2.eu teria que adicionar a este novo projeto todos os forms que fosse criar nos outros projetos o que torna absolutamente inviavel sendo mais viável ter um projeto só com todos os formularios

Entre outros problemas...

Editado por Jesus
Link para o comentário
Compartilhar em outros sites

  • 0
Guest --felipe --
Obrigado pela ajuda ;)

Mas não da certo. Já tentei. Porém eu teria que adicionar todos os forms de todos os formularios.

Ao criar um novo projeto e adicionar desta maneira ocasiona:

1.conflito entre formulários de projetos diferentes com o mesmo nome;

2.eu teria que adicionar a este novo projeto todos os forms que fosse criar nos outros projetos o que torna absolutamente inviavel sendo mais viável ter um projeto só com todos os formularios

Entre outros problemas...

uma coisa que você pode fazer é criar um project group em: Project|add existing project

para acessar o project group: View|Project manager

tive tentando fazer o que você disse, mas não consegui

dei uma pesquisada e não encontrei nada sobre isso..

boa sorte

abraços

Link para o comentário
Compartilhar em outros sites

  • 0
Obrigado pela ajuda ;)

Mas não da certo. Já tentei. Porém eu teria que adicionar todos os forms de todos os formularios.

Ao criar um novo projeto e adicionar desta maneira ocasiona:

1.conflito entre formulários de projetos diferentes com o mesmo nome;

2.eu teria que adicionar a este novo projeto todos os forms que fosse criar nos outros projetos o que torna absolutamente inviavel sendo mais viável ter um projeto só com todos os formularios

Entre outros problemas...

uma coisa que você pode fazer é criar um project group em: Project|add existing project

para acessar o project group: View|Project manager

tive tentando fazer o que você disse, mas não consegui

dei uma pesquisada e não encontrei nada sobre isso..

boa sorte

abraços

Obrigado pela ajuda ;)

Eu também cheguei a fazer isso, adicionei os projetos porém não consegui nada mais além disso, ou seja, pelo que entendi ele serve apenas para melhor gerenciar os diversos projetos que você tem mas não da para criar um unico executavel que relacione todos os outros projetos independentes

Link para o comentário
Compartilhar em outros sites

  • 0
Guest --Jonas --
Obrigado pela ajuda ;)

Mas não da certo. Já tentei. Porém eu teria que adicionar todos os forms de todos os formularios.

Ao criar um novo projeto e adicionar desta maneira ocasiona:

1.conflito entre formulários de projetos diferentes com o mesmo nome;

2.eu teria que adicionar a este novo projeto todos os forms que fosse criar nos outros projetos o que torna absolutamente inviavel sendo mais viável ter um projeto só com todos os formularios

Entre outros problemas...

uma coisa que você pode fazer é criar um project group em: Project|add existing project

para acessar o project group: View|Project manager

tive tentando fazer o que você disse, mas não consegui

dei uma pesquisada e não encontrei nada sobre isso..

boa sorte

abraços

De uma olhada neste endereço: acho que é isto que você esta querendo. Leia com calma para poder enteder ..ok ?

http://www.devmedia.com.br/articles/viewcomp.asp?comp=517

Link para o comentário
Compartilhar em outros sites

  • 0

Jesus, a sugestão é que você crie um novo projeto. Nele, você adiciona os form's (utilize a opção Add) onde você localiza em cada caminho, as unit's a serem utilizadas (a informação do caminho vai ser mantido no seu novo projeto, que pode estar em outra pasta sem problemas).

O que vai ter que verificar é o seguinte: cada um dos seu projetos tem um form principal e, possivelmente, um menu. Então, você vai ter que criar um novo form principal, antes de adicionar os form's dos outros projetos, e nele você coloca o menu com as opções necessárias para formar o novo programa (vai copiando-colando os comandos que estavam nos outros form's principais).

É um processo chato, mas acho que só tem este.

Link para o comentário
Compartilhar em outros sites

  • 0
Obrigado pela ajuda ;)

Mas não da certo. Já tentei. Porém eu teria que adicionar todos os forms de todos os formularios.

Ao criar um novo projeto e adicionar desta maneira ocasiona:

1.conflito entre formulários de projetos diferentes com o mesmo nome;

2.eu teria que adicionar a este novo projeto todos os forms que fosse criar nos outros projetos o que torna absolutamente inviavel sendo mais viável ter um projeto só com todos os formularios

Entre outros problemas...

uma coisa que você pode fazer é criar um project group em: Project|add existing project

para acessar o project group: View|Project manager

tive tentando fazer o que você disse, mas não consegui

dei uma pesquisada e não encontrei nada sobre isso..

boa sorte

abraços

De uma olhada neste endereço: acho que é isto que você esta querendo. Leia com calma para poder enteder ..ok ?

http://www.devmedia.com.br/articles/viewcomp.asp?comp=517

Ok, muito obrigado, vou ler com calma, posto resultados depois =)

Jesus, a sugestão é que você crie um novo projeto. Nele, você adiciona os form's (utilize a opção Add) onde você localiza em cada caminho, as unit's a serem utilizadas (a informação do caminho vai ser mantido no seu novo projeto, que pode estar em outra pasta sem problemas).

O que vai ter que verificar é o seguinte: cada um dos seu projetos tem um form principal e, possivelmente, um menu. Então, você vai ter que criar um novo form principal, antes de adicionar os form's dos outros projetos, e nele você coloca o menu com as opções necessárias para formar o novo programa (vai copiando-colando os comandos que estavam nos outros form's principais).

É um processo chato, mas acho que só tem este.

Obrigado pela ajuda =)

Quais seriam os forms a serem adicionados?? Se for Todos de todos os projetos se torna inviável e este que é o problema.

Quanto ao novo form principal tem razão, terei que fazer um novo form principal para ficar bacana. Achei interessante esta sua idéia.

Vou fazer um novo form e tentar relacionar com os outros formulários de alguma forma que o novo Form principal não necessite de "manutenção" nos códigos, assim de conseguir algo ou obtiver algum problema posto aqui, muito obrigado

EDITADO:

Jonas, li o texto, achei muito bom porém na prática não irá ajudar muito em meus projetos que já estão prontos, apenas não interligados... Talvez para novos projetos futuros começados do zero sirva para uma melhor organização...

Micheus, a idéia de criar um novo form principal e dele derivar diversos novos projetos é de certa forma funcional em novos projetos, iniciados do zero e a partir deste novo form gerar outros projetos e forms.

Porém eu já tenho criado 3 grandes projetos sendo que entre eles existem nomes de formulários iguais tornando a adição dos formulários ao novo projeto inviável pois teria que remodelar o nome de muitos formularios além dos links.

O grande problema é que, ao novo projeto, devem ser incluídos TODOS os arquivos .PAS de todos os projetos.

Fica ai uma grande dúvida: como criar um novo projeto, este relacionando com outros projetos sem que necessite adicionar ao novo os arquivos dos outros...

Editado por Jesus
Link para o comentário
Compartilhar em outros sites

  • 0
Guest --felipe --
Obrigado pela ajuda ;)

Mas não da certo. Já tentei. Porém eu teria que adicionar todos os forms de todos os formularios.

Ao criar um novo projeto e adicionar desta maneira ocasiona:

1.conflito entre formulários de projetos diferentes com o mesmo nome;

2.eu teria que adicionar a este novo projeto todos os forms que fosse criar nos outros projetos o que torna absolutamente inviavel sendo mais viável ter um projeto só com todos os formularios

Entre outros problemas...

uma coisa que você pode fazer é criar um project group em: Project|add existing project

para acessar o project group: View|Project manager

tive tentando fazer o que você disse, mas não consegui

dei uma pesquisada e não encontrei nada sobre isso..

boa sorte

abraços

De uma olhada neste endereço: acho que é isto que você esta querendo. Leia com calma para poder enteder ..ok ?

http://www.devmedia.com.br/articles/viewcomp.asp?comp=517

Ok, muito obrigado, vou ler com calma, posto resultados depois =)

Jesus, a sugestão é que você crie um novo projeto. Nele, você adiciona os form's (utilize a opção Add) onde você localiza em cada caminho, as unit's a serem utilizadas (a informação do caminho vai ser mantido no seu novo projeto, que pode estar em outra pasta sem problemas).

O que vai ter que verificar é o seguinte: cada um dos seu projetos tem um form principal e, possivelmente, um menu. Então, você vai ter que criar um novo form principal, antes de adicionar os form's dos outros projetos, e nele você coloca o menu com as opções necessárias para formar o novo programa (vai copiando-colando os comandos que estavam nos outros form's principais).

É um processo chato, mas acho que só tem este.

Obrigado pela ajuda =)

Quais seriam os forms a serem adicionados?? Se for Todos de todos os projetos se torna inviável e este que é o problema.

Quanto ao novo form principal tem razão, terei que fazer um novo form principal para ficar bacana. Achei interessante esta sua idéia.

Vou fazer um novo form e tentar relacionar com os outros formulários de alguma forma que o novo Form principal não necessite de "manutenção" nos códigos, assim de conseguir algo ou obtiver algum problema posto aqui, muito obrigado

EDITADO:

Jonas, li o texto, achei muito bom porém na prática não irá ajudar muito em meus projetos que já estão prontos, apenas não interligados... Talvez para novos projetos futuros começados do zero sirva para uma melhor organização...

Micheus, a idéia de criar um novo form principal e dele derivar diversos novos projetos é de certa forma funcional em novos projetos, iniciados do zero e a partir deste novo form gerar outros projetos e forms.

Porém eu já tenho criado 3 grandes projetos sendo que entre eles existem nomes de formulários iguais tornando a adição dos formulários ao novo projeto inviável pois teria que remodelar o nome de muitos formularios além dos links.

O grande problema é que, ao novo projeto, devem ser incluídos TODOS os arquivos .PAS de todos os projetos.

Fica ai uma grande dúvida: como criar um novo projeto, este relacionando com outros projetos sem que necessite adicionar ao novo os arquivos dos outros...

pois então fica ai um grande mistério

uheuiehuie

conseguiu resolver??

abraço

Link para o comentário
Compartilhar em outros sites

  • 0

Como disse, assim que conseguisse (e eu consegui) iria postar aqui o resultado.

Desde sexta-feira venho pensando em uma forma de conseguir tal façanha, passei por criar um novo projeto e este abranger todos ou apenas os links para os outros projetos, mas por razões já explicadas acima tal idéia se tornou extremamente inviável, após pensar um pouco mais, tentei utilizar DLLs, porém o mesmo problema de lincar TODOS os formulários e nomes iguais ocasionava erro, continuando pensando e pesquisando achei uma solução, e ela se chama:

PACKAGES... ou módulos, como preferirem.

De acordo com o autor do texto da página http://www.fundao.wiki.br/articles.asp?cod=54:

Packages do Delphi permitem que você coloque porções de sua aplicação em módulos separados, os quais podem ser distribuídos através de múltiplas aplicações.(...)

Pense em package como uma coleção de units armazenadas em um módulo como uma DLL separado (um Delphi Package Library, ou arquivo DPL). Sua aplicação pode então linkar com estas units "empacotadas" em tempo de execução ao invéz de linkar em tempo de compilação. Como o código para essas units reside em arquivos DPL e não em EXE ou DLL, o tamanho de seu EXE ou DLL pode ficar muito menor.(...)

Enfim, vou mostrar em palavras a solução:

Eu crio um package para cada projeto, esta criação é simples podendo linkar os formulários visualmente, para isso, vá em File|New|Package, adicione todas as units necessárias em requires, salve e compile. Se não for informado previamente onde o arquivo será compilado, o Delphi o compilará em C:\Arquivos de programas\Borland\Delphi5\Projects\Bpl, copie os arquivos .dcp e .bpl correspondentes ao módulo criado e coloque na pasta do novo formulário que será criado.

Crie um novo formulário (que será o principal) e para chamar os formulários das outras aplicações é só inserir um código parecido com este:

////////////////////////////////// procedimento para abrir um pacote ///////////////////////////////
proedure CriaPacote;
var     APackage : array of Cardinal;
        APersistentClass: TPersistentClass;
        AForm: TForm;
        sFile: string;
        i:Integer;
begin

  SetLength(APackage, 0); //reseta a variavel
  sFile := ‘\Caminho do Pacote\’+’Pacote.BPL';
  if FileExists(sFile) then
    begin
      SetLength(APackage, Length(APackage) + 1);
      APackage[Length(APackage)-1] := LoadPackage(sFile); ///// abri pacote
    end;
end;

////////////////////////// procedimento para abrir um formulário ////////////////////////
procedure abrirFormulario;
var     APersistentClass: TPersistentClass;
        AForm: TForm;
begin
  APersistentClass := GetClass('TCadCli');
  if APersistentClass = nil
    then
      showmessage('Formulario não localizada!')
    else
      begin
        AForm := TComponentClass(APersistentClass).Create(Application) as TForm;
        AForm.ShowModal;
      end;
end;
(Código retirado de: http://www.activedelphi.com.br/modules.php...=0&thold=0) Lembrando que o formulário que será "puxado" deverá conter o seguinte código:
Initialization   RegisterClass(Classe do formulario); //// serve para registra o formulário.
Finalization   UnRegisterClass(Classe do formulario); // tira referencia do formulário

Bom pessoal, a partir dai é só utilizar a imaginação. Expliquei bem superficialmente apenas para abranger um pouco o tema, quem quiser saber mais ou tiver alguma dúvida pergunte por aqui, se alguém realmente tiver muito interesse me adicione no MSN : jesusbft@hotmail.com, posso dar uma ajuda, ainda não criei meu novo formulário, se tiverem interesse posso postar novos códigos que aparecerão, ok??

Espero ter ajudado e obrigado pelo interesse de todos.

Jesus

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152k
    • Posts
      651,8k
×
×
  • Criar Novo...