Ir para conteúdo
  • Cadastre-se

dev botao

Migrando de Delphi para Lazarus


  • Este tópico foi criado há 1690 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Estou iniciando com o lazarus, instalei, instalei o IBX, Fortes e ACBR nele.

Gostaria da ajuda do pessoal que já está acostumado com o Lazarus sobre como migrar meus projetos, tenho projetos em Delphi 7 e em Delphi 2010.

Tentei simplesmente abrir um projeto do Delphi no Lazarus e de cara na hora de compilar ele dá erro na declaração Forms.

Se alguém puder me passar ou me indicar um be-a-bá ajudaria bem.

Obrigado!

 

 

Link para o comentário
Compartilhar em outros sites

  • Moderadores
Link para o comentário
Compartilhar em outros sites

  • Consultores
4 horas atrás, cefantacini disse:

Tentei simplesmente abrir um projeto do Delphi no Lazarus e de cara na hora de compilar ele dá erro na declaração Forms. 

Se alguém puder me passar ou me indicar um be-a-bá ajudaria bem. 

Obrigado!

 

 

Você precisa converter os projetos do Delphi 7 para o Lazarus.

Vá em Ferramentas -> Conversão Delphi -> Converter projeto Delphi para lazarus ...

image.png

 

  • Curtir 1

[]'s

Consultor SAC ACBr

Elton
Profissionalize o ACBr na sua empresa, conheça o ACBr Pro.

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Um engenheiro de Controle de Qualidade(QA) entra num bar. Pede uma cerveja. Pede zero cervejas.
Pede 99999999 cervejas. Pede -1 cervejas. Pede um jacaré. Pede asdfdhklçkh.
Link para o comentário
Compartilhar em outros sites

Amarildo, obrigado pela dica, fiz o Cadastro lá e estou acompanhando algumas aulas.

EMBarbosa, fiz da forma que vc falou, estou compilando um projeto e fazendo os ajustes.

Cheguei num ponto de um erro que eu acho que foi falha na instalação do ACBR:

ACBrDFeSSL.pas(254,3) Fatal: Impossível localizar ACBrDFeUtil usado por ACBrDFeSSL, ppu incompatível=C:\Programacao\ACBRLazarus\Lib\Lazarus\ACBrDFe\i386-win32\ACBrDFeUtil.ppu, pacote ACBrDFeComum

Alguém teria alguma dica?

 

Link para o comentário
Compartilhar em outros sites

  • Consultores
1 hora atrás, cefantacini disse:

Cheguei num ponto de um erro que eu acho que foi falha na instalação do ACBR:

ACBrDFeSSL.pas(254,3) Fatal: Impossível localizar ACBrDFeUtil usado por ACBrDFeSSL, ppu incompatível=C:\Programacao\ACBRLazarus\Lib\Lazarus\ACBrDFe\i386-win32\ACBrDFeUtil.ppu, pacote ACBrDFeComum

Alguém teria alguma dica?

Você precisa verificar o motivo do lazarus não conseguir localizar o arquivo. Esse arquivo se encontra na pasta ACBr\Fontes\ACBrDFe\

 

[]'s

Consultor SAC ACBr

Elton
Profissionalize o ACBr na sua empresa, conheça o ACBr Pro.

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Um engenheiro de Controle de Qualidade(QA) entra num bar. Pede uma cerveja. Pede zero cervejas.
Pede 99999999 cervejas. Pede -1 cervejas. Pede um jacaré. Pede asdfdhklçkh.
Link para o comentário
Compartilhar em outros sites

1 hora atrás, EMBarbosa disse:

Você precisa verificar o motivo do lazarus não conseguir localizar o arquivo. Esse arquivo se encontra na pasta ACBr\Fontes\ACBrDFe\

Vc poderia me dar alguma indicação de como faço essa verificação?

O caminho está correto e o arquivo está na pasta...

image.png.91fd2e16642f4f9658199f74489f7096.png

 

Link para o comentário
Compartilhar em outros sites

  • Consultores

Tente abrir o pacote e limpar e reconstruir... Talvez seja alguma sujeira.

[]'s

Consultor SAC ACBr

Elton
Profissionalize o ACBr na sua empresa, conheça o ACBr Pro.

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Um engenheiro de Controle de Qualidade(QA) entra num bar. Pede uma cerveja. Pede zero cervejas.
Pede 99999999 cervejas. Pede -1 cervejas. Pede um jacaré. Pede asdfdhklçkh.
Link para o comentário
Compartilhar em outros sites

Eu fiz esse teste ai não deu certo, desinstalei o lazarus, atualizei o acbr, instalei o lazarus em outra pasta, atualizei o acbr, instalei tudo de novo no lazarus e o problema permanece.

Eu tenho o Delphi 2010 instalado na máquina e um acbr para o Delphi e outro para o Lazarus, no delphi permanece normal...

Se tiver alguma outra idéia...

Link para o comentário
Compartilhar em outros sites

  • Consultores

Você está usando o Lazarus 32 bits?

[]'s

Consultor SAC ACBr

Elton
Profissionalize o ACBr na sua empresa, conheça o ACBr Pro.

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Um engenheiro de Controle de Qualidade(QA) entra num bar. Pede uma cerveja. Pede zero cervejas.
Pede 99999999 cervejas. Pede -1 cervejas. Pede um jacaré. Pede asdfdhklçkh.
Link para o comentário
Compartilhar em outros sites

  • Consultores

Que estranho, não consigo reproduzir esse problema.

Tente apagar o arquivo PPU citado na mensagem de erro e recompilar os pacotes.

38 minutos atrás, cefantacini disse:

é o 32 sim... 

 

[]'s

Consultor SAC ACBr

Elton
Profissionalize o ACBr na sua empresa, conheça o ACBr Pro.

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Um engenheiro de Controle de Qualidade(QA) entra num bar. Pede uma cerveja. Pede zero cervejas.
Pede 99999999 cervejas. Pede -1 cervejas. Pede um jacaré. Pede asdfdhklçkh.
Link para o comentário
Compartilhar em outros sites

Fiz o teste e o problema permanece.

Já tentei várias vezes remover e reinstalar o ACBR e o Lazarus e o problema é sempre  o mesmo.

Com certeza estou repetindo o mesmo erro todas as vezes, o duro é saber onde está o problema.

Será que é pelo fato de eu ter o Delphi e o Lazarus na mesma máquina?

Apesar de que tenho um ACBR para cada...

 

Link para o comentário
Compartilhar em outros sites

  • Moderadores
35 minutos atrás, cefantacini disse:

Fiz o teste e o problema permanece.

Já tentei várias vezes remover e reinstalar o ACBR e o Lazarus e o problema é sempre  o mesmo.

Com certeza estou repetindo o mesmo erro todas as vezes, o duro é saber onde está o problema.

Será que é pelo fato de eu ter o Delphi e o Lazarus na mesma máquina?

Apesar de que tenho um ACBR para cada...

 

Não.

tenho e não ocorre erros

Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Black-02.png
 

 

Link para o comentário
Compartilhar em outros sites

  • Consultores
3 horas atrás, cefantacini disse:

Será que é pelo fato de eu ter o Delphi e o Lazarus na mesma máquina?

Apesar de que tenho um ACBR para cada...

Também acredito que não.

Eu também tenho e uso o nos meus testes o mesmo ACBr pros dois.

[]'s

Consultor SAC ACBr

Elton
Profissionalize o ACBr na sua empresa, conheça o ACBr Pro.

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Um engenheiro de Controle de Qualidade(QA) entra num bar. Pede uma cerveja. Pede zero cervejas.
Pede 99999999 cervejas. Pede -1 cervejas. Pede um jacaré. Pede asdfdhklçkh.
Link para o comentário
Compartilhar em outros sites

  • Consultores
4 horas atrás, cefantacini disse:

Será que eu deveria usar um ACBR só para os dois?

Não precisa. Na verdade eu uso um por causa dos meus testes aqui.

2 horas atrás, cefantacini disse:

O aviso aí durante a instalação do ACBR será que pode ter alguma relação com o problema?

image.png.a8fd6fc9d1849e7f27b3db36a9b35e79.png

Acho que não porque esse pacote não está relacionado com o problema que você citou...

[]'s

Consultor SAC ACBr

Elton
Profissionalize o ACBr na sua empresa, conheça o ACBr Pro.

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Um engenheiro de Controle de Qualidade(QA) entra num bar. Pede uma cerveja. Pede zero cervejas.
Pede 99999999 cervejas. Pede -1 cervejas. Pede um jacaré. Pede asdfdhklçkh.
Link para o comentário
Compartilhar em outros sites

Eu mudei um pouco a linha, para tentar isolar o problema, em vez de migrar um projeto, comecei um projeto novo, coloquei apenas 2 componentes na tela e compilei.

Um ACBRSAT e um ACBrSATExtratoFortes

Aí recebi o seguinte erro:

ACBrSAT.pas(75,18) Error: Identifier not found "TACBrSATExtratoClass"

Será que com isso facilita a compreensão de onde pode estar o problema?

image.png

Link para o comentário
Compartilhar em outros sites

  • Consultores
20 horas atrás, cefantacini disse:

Eu mudei um pouco a linha, para tentar isolar o problema, em vez de migrar um projeto, comecei um projeto novo, coloquei apenas 2 componentes na tela e compilei.

Um ACBRSAT e um ACBrSATExtratoFortes

Aí recebi o seguinte erro:

ACBrSAT.pas(75,18) Error: Identifier not found "TACBrSATExtratoClass"

Será que com isso facilita a compreensão de onde pode estar o problema?

A classe "TACBrSATExtratoClass" está no arquivo "ACBrSATExtratoClass.pas". Ele é está referenciado na cláusula uses no início da unit ACBrSAT.pas, veja:

image.png

Você deve conseguir abrir esse arquivo e verificar se o conteúdo está correto.

[]'s

Consultor SAC ACBr

Elton
Profissionalize o ACBr na sua empresa, conheça o ACBr Pro.

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Um engenheiro de Controle de Qualidade(QA) entra num bar. Pede uma cerveja. Pede zero cervejas.
Pede 99999999 cervejas. Pede -1 cervejas. Pede um jacaré. Pede asdfdhklçkh.
Link para o comentário
Compartilhar em outros sites

Eu estou começando a entender o problema.

No meu sistema, em alguns forms eu uso a declaração:  ACBrSATExtratoClass no uses.

Quando eu fui migrar do delphi para o lazarus ele por algum motivo retirou essa declaração das units do meu projeto e tbém da unit ACBrSAT.

Eu voltei a declaração no programa de teste para a unit ACBrSAT e funcionou.

No meu sistema ele não encontra o arquivo ACBrSATExtratoClass pq está procurando ele na pasta do projeto do meu sistema e não na pasta de instalação do lazarus.

veja a mensagem de erro: 

Arquivo "C:\BkpLazarus\10_SAT\ACBrSATExtratoClass.pas" não encontrado.

A pasta: C:\BkpLazarus\10_SAT\ é a pasta do meu sistema.

A pasta correta onde a unit está é a: C:\Programacao\Lazarus\ACBr\Fontes\ACBrSAT\Extrato

Como faço para  meu projeto entender que tem que procurar essa unit na pasta correta?

 

Link para o comentário
Compartilhar em outros sites

  • Consultores
1 hora atrás, cefantacini disse:

Eu estou começando a entender o problema.

No meu sistema, em alguns forms eu uso a declaração:  ACBrSATExtratoClass no uses.

Quando eu fui migrar do delphi para o lazarus ele por algum motivo retirou essa declaração das units do meu projeto e tbém da unit ACBrSAT.

Eu voltei a declaração no programa de teste para a unit ACBrSAT e funcionou.

No meu sistema ele não encontra o arquivo ACBrSATExtratoClass pq está procurando ele na pasta do projeto do meu sistema e não na pasta de instalação do lazarus.

veja a mensagem de erro: 

Arquivo "C:\BkpLazarus\10_SAT\ACBrSATExtratoClass.pas" não encontrado.

A pasta: C:\BkpLazarus\10_SAT\ é a pasta do meu sistema.

A pasta correta onde a unit está é a: C:\Programacao\Lazarus\ACBr\Fontes\ACBrSAT\Extrato

Como faço para  meu projeto entender que tem que procurar essa unit na pasta correta?

 

Pode ser que não pegou as dependências do projeto.

No Lazarus, um projeto tem configuração de dependências, isto é, quais pacotes são necessários para compilar o projeto.

Você pode visualizar isso acessando o "Inspetor de projetos" no menu "Projeto -> Inspetor de projetos...".

Ele tem uma tela como essa abaixo (observe a lista Pacotes Requeridos):

image.png

Verifique se no seu projeto está listando todos os pacotes usados. Caso contrário, por meio dessa tela você pode adicionar requerimentos (ou pacotes requeridos).

Isso vai instruir o Lazarus ao compilar seu projeto encontrar os arquivos necessários.

[]'s

Consultor SAC ACBr

Elton
Profissionalize o ACBr na sua empresa, conheça o ACBr Pro.

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Um engenheiro de Controle de Qualidade(QA) entra num bar. Pede uma cerveja. Pede zero cervejas.
Pede 99999999 cervejas. Pede -1 cervejas. Pede um jacaré. Pede asdfdhklçkh.
Link para o comentário
Compartilhar em outros sites

Deu certo, consegui instalar o ACBr e compilar o programa.

Agora estou com um outro problema, como esse projeto é do Delphi 2010 tem algumas propriedades dos botões que o Lazarus não reconhece.

Vc sabe se tem alguma forma de eu pedir para o lazarus ignorar essas propriedades?

Toda hora que eu aperto F12 para visualizar o form ele dá essa msg:

image.png.758220be509ef052cf376906553dd4c9.png

eu já tentei usar as 3 opções disponíveis ai, mais nada resolve em definitivo..

 

Link para o comentário
Compartilhar em outros sites

  • Consultores
11 minutos atrás, cefantacini disse:

Deu certo, consegui instalar o ACBr e compilar o programa.

Agora estou com um outro problema, como esse projeto é do Delphi 2010 tem algumas propriedades dos botões que o Lazarus não reconhece.

Vc sabe se tem alguma forma de eu pedir para o lazarus ignorar essas propriedades?

Toda hora que eu aperto F12 para visualizar o form ele dá essa msg:

image.png.758220be509ef052cf376906553dd4c9.png

eu já tentei usar as 3 opções disponíveis ai, mais nada resolve em definitivo..

 

Estranho, essas propriedades geralmente são removidas quando você converte usando aquele recurso que mencionei antes...

Também, se você selecionar a última opção "Parar todo o carregamento", deveria aparecer uma opção para corrigir o arquivo .lfm.

Mas se isso não está funcionando, o jeito mesmo é abrir num editor de texto (notepad++, por exemplo) e remover.

[]'s

Consultor SAC ACBr

Elton
Profissionalize o ACBr na sua empresa, conheça o ACBr Pro.

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Um engenheiro de Controle de Qualidade(QA) entra num bar. Pede uma cerveja. Pede zero cervejas.
Pede 99999999 cervejas. Pede -1 cervejas. Pede um jacaré. Pede asdfdhklçkh.
Link para o comentário
Compartilhar em outros sites

O erro acima eu consegui resolver, joguei tudo fora e migrei de novo, já com um pouco mais de experiência, foi mais fácil.

O problema é que quando fiz os ajustes nos arquivos .lfm, com o notepad++ deixei alguma sujeira e algumas linhas ficaram incompletas no aquivo o que gerava esse erro.

Agora, como estou iniciando com o Lazarus, alguns outros detalhes vão aparecendo, meu problema está sendo ler arquivo .INI, os meus estão em formato ANSI, e pelo que vi o lazarus usa UTF-8, será que tem alguma forma de eu converter meus arquivos INI no formato que o Lazarus usa, ou ler as informações deles sem precisar converter?

Qual seria o melhor caminho?

Eu tentei usar as funções: UTF8ToSys e SysToUTF8 mais não obtive êxito.

Se alguém puder me dar alguma dica de qual é o melhor caminho...

Link para o comentário
Compartilhar em outros sites

  • Este tópico foi criado há 1690 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.