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 

Erro ao compliar aplicação

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


Registrado: Quarta-Feira, 24 de Mai de 2017
Mensagens: 8

MensagemEnviada: Qua Mai 24, 2017 2:01 am    Assunto: Erro ao compliar aplicação Responder com Citação

Boa noite pessoal, estou passando por um pessimo momente em que criei uma programa que esta em 85% da produção e quando eu tentei proteger a aplicação com o componente EvAppProtect nao consigo mais compilar.
Resumindo: adiciono o componente e da os seguintes erros :
Código:
Checking project dependencies...
Compiling Adonai.dproj (Debug configuration)
[DCC Error] Ulogin.pas(20): E2003 Undeclared identifier: 'TEvAppProtect'
[DCC Error] Ulogin.pas(20): E2217 Published field 'EvAppProtect1' not a class or interface type
[DCC Fatal Error] Ulogin.pas(37): F2063 Could not compile used unit 'Umenu.pas'
Failed
Elapsed time: 00:00:00.4


quando removo o componente a aplicação compila normal
quando declaro na uses
Código:
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, StdCtrls, jpeg, XPMan, Mask, DBCtrls, DB, ADODB, EAppProt, EvAppProtect1;

fica com seguinte erro :
Código:
Checking project dependencies...
Compiling Adonai.dproj (Debug configuration)
[DCC Fatal Error] Ulogin.pas(7): F1026 File not found: 'EvAppProtect1.dcu'
Failed
Elapsed time: 00:00:00.2


agora segue o codigo completo ?
Código:
unit Ulogin;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, StdCtrls, jpeg, XPMan, Mask, DBCtrls, DB, ADODB, EAppProt, EvAppProtect1;

type
  TFrmLogin = class(TForm)
    GrpBxLogin: TGroupBox;
    Cadeado: TImage;
    Image1: TImage;
    BtnLogin: TButton;
    BtnSair: TButton;
    Label1: TLabel;
    Edit1: TEdit;
    Label2: TLabel;
    Edit2: TEdit;
    EvAppProtect1: TEvAppProtect;
    procedure BtnSairClick(Sender: TObject);
    procedure BtnLoginClick(Sender: TObject);
    procedure Edit2KeyPress(Sender: TObject; var Key: Char);
    procedure FormKeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  FrmLogin: TFrmLogin;

implementation

uses Unit3, Umenu;

{$R *.dfm}



procedure TFrmLogin.BtnSairClick(Sender: TObject);
begin
Application.Terminate;
end;

procedure TFrmLogin.BtnLoginClick(Sender: TObject);
begin

//inicio do login

If (DM.TabAcesso.Locate('USUARIO',Edit1.Text,[])) and (DM.TabAcesso.Locate('SENHA',Edit2.Text,[])) then
 Begin
  FrmMenu.ShowModal;
  FrmLogin.Hide;
 end

else

If (Edit1.Text ='') and (Edit2.Text= '') then
ShowMessage('Preencha os campos Login e Senha')

else
MessageDlg('Login e senha são invalidos', mtError, [mbOk], 0);
end;


 //Fim do codigo login


procedure TFrmLogin.Edit2KeyPress(Sender: TObject; var Key: Char);
begin
 if Key = #13 then            // Define o comando enter
    BtnLoginClick(Sender);     // Atribui a função do boatao entrar ao enter
end;

procedure TFrmLogin.FormKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
if key = vk_return then SelectNext(ActiveControl,True,True);   // define tab on press enter para navegar entre dbedit´s
end;

end.


Agraadeço se me ajudarem
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
natanbh1
Colaborador
Colaborador


Registrado: Terça-Feira, 15 de Março de 2011
Mensagens: 3093
Localização: Belo Horizonte - MG

MensagemEnviada: Qua Mai 24, 2017 10:44 am    Assunto: Responder com Citação

Tenho o demo deste pacote de componentes e funciona normalmente.

Analisando sua declaração da Uses, EvAppProtect1 não é necessário declarar, a biblioteca deste componente é esta EAppProt.

Sua uses deve ficar assim:

Código:
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, StdCtrls, jpeg, XPMan, Mask, DBCtrls, DB, ADODB, EAppProt;


Faça essa modificação e veja se compila normalmente sua aplicação.
_________________
''A persistência é o caminho para o êxito.''
Charlie Chaplin
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Enviar E-mail
wjuniordias
Profissional
Profissional


Registrado: Sexta-Feira, 16 de Março de 2012
Mensagens: 667

MensagemEnviada: Qui Mai 25, 2017 11:29 am    Assunto: Re: Erro ao compliar aplicação Responder com Citação

Deu algum erro na instalação do mesmo? Talvez pode ser também que não foi inserido no "Library Path" do Delphi.
_________________
"O sábio nunca diz tudo o que pensa, mas pensa sempre tudo o que diz." (Aristóteles)
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Visitar a homepage do Usuário MSN Messenger
janiltojack
Novato
Novato


Registrado: Quarta-Feira, 24 de Mai de 2017
Mensagens: 8

MensagemEnviada: Sex Mai 26, 2017 12:21 am    Assunto: Responder com Citação

natanbh1 escreveu:
Tenho o demo deste pacote de componentes e funciona normalmente.

Analisando sua declaração da Uses, EvAppProtect1 não é necessário declarar, a biblioteca deste componente é esta EAppProt.

Sua uses deve ficar assim:

Código:
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, StdCtrls, jpeg, XPMan, Mask, DBCtrls, DB, ADODB, EAppProt;


Faça essa modificação e veja se compila normalmente sua aplicação.


Rapaz quando eu tiro essa declaração ele da 3 erros
Código:
[DCC Error] Ulogin.pas(20): E2003 Undeclared identifier: 'TEvAppProtect'
[DCC Error] Ulogin.pas(20): E2217 Published field 'EvAppProtect1' not a class or interface type
[DCC Fatal Error] Adonai.dpr(16): F2063 Could not compile used unit 'Ulogin.pas'



a aponta para

Código:
type
  TFrmLogin = class(TForm)
    GrpBxLogin: TGroupBox;
    Cadeado: TImage;
    Image1: TImage;
    BtnLogin: TButton;
    BtnSair: TButton;
    Label1: TLabel;
    Edit1: TEdit;
    Label2: TLabel;
    Edit2: TEdit;
    EvAppProtect1: TEvAppProtect;  <<<============<<
    procedure BtnSairClick(Sender: TObject);
    procedure BtnLoginClick(Sender: TObject);
    procedure Edit2KeyPress(Sender: TObject; var Key: Char);
    procedure FormKeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
[/u][/i]
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
janiltojack
Novato
Novato


Registrado: Quarta-Feira, 24 de Mai de 2017
Mensagens: 8

MensagemEnviada: Sex Mai 26, 2017 12:24 am    Assunto: Re: Erro ao compliar aplicação Responder com Citação

wjuniordias escreveu:
Deu algum erro na instalação do mesmo? Talvez pode ser também que não foi inserido no "Library Path" do Delphi.



Entao meu amigo eu dei uma conferida na Library Win 32 em directories
está informando C:\Odisseia\TCFComps\D14 creio que esteja certo .


OBS: Só para esclarecer para os amigos o seguinte fato, quando eu crio um novo aplicativo ou seja um novo projeto e adiciono o componente e mando compilar ele funciona e a compilação ocorre normalmente

Quero desde já estar agradecendo o interesse de e ajudar se houver alguma forma de eu colaborar mais com vcs me digam por favor.
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
leo_cj
Colaborador
Colaborador


Registrado: Sábado, 26 de Março de 2011
Mensagens: 1335

MensagemEnviada: Sex Mai 26, 2017 8:45 am    Assunto: Responder com Citação

Se eu entendi bem, se você cria um outro projeto e coloca o componente, ele funciona normalmente, mas no projeto em que você está trabalhando não compila, é isso?

se sim, o que é o EvAppProtect1? faz parte do componente ou foi você quem fez?
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
janiltojack
Novato
Novato


Registrado: Quarta-Feira, 24 de Mai de 2017
Mensagens: 8

MensagemEnviada: Sex Mai 26, 2017 9:08 am    Assunto: Responder com Citação

leo_cj escreveu:
Se eu entendi bem, se você cria um outro projeto e coloca o componente, ele funciona normalmente, mas no projeto em que você está trabalhando não compila, é isso?

se sim, o que é o EvAppProtect1? faz parte do componente ou foi você quem fez?


Isso mesmo, exatamente o que vc falou em uma nova aplicação o componente compila normal sim.

EvAppProtect esse é o nome do componente, diante dessa situação eu presumo que o problema esta na minha aplicação mas noa consigo saber onde esta localizado.

desde já Obrigado por se interessar!!
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
leo_cj
Colaborador
Colaborador


Registrado: Sábado, 26 de Março de 2011
Mensagens: 1335

MensagemEnviada: Sex Mai 26, 2017 9:33 am    Assunto: Responder com Citação

bom, nunca trabalhei com esse componente, então vou me basear nos posts do tópico.

Conforme dito pelo amigo natanbh1, a biblioteca utilizada pelo componente é a EAppProt, já a EvAppProtect1 que também está declarada na uses do seu projeto é o nome do seu componente, portanto não é necessário declarar o mesmo na uses, mesmo porque ele é o componente e não uma classe ou interface.

Quando você cria um novo projeto e coloca o componente, repare como fica a uses da unit, provavelmente esteja apenas o EAppProt e não o componente junto.

Faça um teste removendo apenas o EvAppProtect1 da clausula uses do seu projeto que ocorre o erro, permanecendo a biblioteca EAppProt e tente compilar o projeto, feito isso, nos avise do resultado.
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
janiltojack
Novato
Novato


Registrado: Quarta-Feira, 24 de Mai de 2017
Mensagens: 8

MensagemEnviada: Sex Mai 26, 2017 10:08 am    Assunto: Responder com Citação

leo_cj escreveu:
bom, nunca trabalhei com esse componente, então vou me basear nos posts do tópico.

Conforme dito pelo amigo natanbh1, a biblioteca utilizada pelo componente é a EAppProt, já a EvAppProtect1 que também está declarada na uses do seu projeto é o nome do seu componente, portanto não é necessário declarar o mesmo na uses, mesmo porque ele é o componente e não uma classe ou interface.

Quando você cria um novo projeto e coloca o componente, repare como fica a uses da unit, provavelmente esteja apenas o EAppProt e não o componente junto.

Faça um teste removendo apenas o EvAppProtect1 da clausula uses do seu projeto que ocorre o erro, permanecendo a biblioteca EAppProt e tente compilar o projeto, feito isso, nos avise do resultado.


Sim meu amigo Leo_cj eu somente add o componente sem fazer mais alterações a uses ficou assim:
Código:
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, StdCtrls, jpeg, XPMan, Mask, DBCtrls, DB, ADODB, EAppProt;


type fcou assim :
Código:
type
  TFrmLogin = class(TForm)
    GrpBxLogin: TGroupBox;
    Cadeado: TImage;
    Image1: TImage;
    BtnLogin: TButton;
    BtnSair: TButton;
    Label1: TLabel;
    Edit1: TEdit;
    Label2: TLabel;
    Edit2: TEdit;
    EvAppProtect1: TEvAppProtect;                       <<<=========<<
    procedure BtnSairClick(Sender: TObject);
    procedure BtnLoginClick(Sender: TObject);
    procedure Edit2KeyPress(Sender: TObject; var Key: Char);
    procedure FormKeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
  private
    { Private declarations }
  public
    { Public declarations }
  end;


e o delphi me retorna o erro :
Código:
[DCC Error] Ulogin.pas(20): E2003 Undeclared identifier: 'TEvAppProtect'
[DCC Error] Ulogin.pas(20): E2217 Published field 'EvAppProtect1' not a class or interface type
[DCC Fatal Error] Adonai.dpr(16): F2063 Could not compile used unit 'Ulogin.pas'


se quiser posso postar prpjeto completo pra vc´s analizarem
obrigado!!
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
natanbh1
Colaborador
Colaborador


Registrado: Terça-Feira, 15 de Março de 2011
Mensagens: 3093
Localização: Belo Horizonte - MG

MensagemEnviada: Sex Mai 26, 2017 10:24 am    Assunto: Responder com Citação

Suspeito que seja alguma inconsistência entre o código .pas e o .dfm do seu form.

Se puder, poste como está seu código .dfm para análise.

Para visualiza-lo:

- Botão direito na parte visual do seu form Login e clique "View as Text".
ou
- Selecione a parte visual do seu form e dê Alt + F12.

Poste o código .pas completo também para comparação.
_________________
''A persistência é o caminho para o êxito.''
Charlie Chaplin
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Enviar E-mail
janiltojack
Novato
Novato


Registrado: Quarta-Feira, 24 de Mai de 2017
Mensagens: 8

MensagemEnviada: Sex Mai 26, 2017 11:37 am    Assunto: Responder com Citação

natanbh1 escreveu:
Suspeito que seja alguma inconsistência entre o código .pas e o .dfm do seu form.

Se puder, poste como está seu código .dfm para análise.

Para visualiza-lo:

- Botão direito na parte visual do seu form Login e clique "View as Text".
ou
- Selecione a parte visual do seu form e dê Alt + F12.

Poste o código .pas completo também para comparação.


fica assim o codigo do .dfm:

https://pastebin.com/Qi1ymmZg

coloquei no pastebin pois nao consegui postar todo ele aqui, nem sei se é correto fazer isso .
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
natanbh1
Colaborador
Colaborador


Registrado: Terça-Feira, 15 de Março de 2011
Mensagens: 3093
Localização: Belo Horizonte - MG

MensagemEnviada: Sex Mai 26, 2017 12:10 pm    Assunto: Responder com Citação

Fiz um teste unindo seu .pas e .dfm e aqui funcionou normalmente.

O que se leva a entender que o problema é específico em seu projeto mesmo ou então algum problema na instalação do seu componente.

O seu componente é demo ou você comprou?
Já experimentou desinstalar o componente e reinstalá-lo?
Já tentou entrar em contato com o suporte do componente?

Se puder me enviar o seu projeto por e-mail, eu tento reproduzir o seu cenário:
natanaelcosta1@gmail.com
_________________
''A persistência é o caminho para o êxito.''
Charlie Chaplin
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Enviar E-mail
janiltojack
Novato
Novato


Registrado: Quarta-Feira, 24 de Mai de 2017
Mensagens: 8

MensagemEnviada: Sex Mai 26, 2017 1:03 pm    Assunto: Responder com Citação

natanbh1 escreveu:
Fiz um teste unindo seu .pas e .dfm e aqui funcionou normalmente.

O que se leva a entender que o problema é específico em seu projeto mesmo ou então algum problema na instalação do seu componente.

O seu componente é demo ou você comprou?
Já experimentou desinstalar o componente e reinstalá-lo?
Já tentou entrar em contato com o suporte do componente?

Se puder me enviar o seu projeto por e-mail, eu tento reproduzir o seu cenário:
natanaelcosta1@gmail.com


Eu falei com o suporte sim e me pediram pra fazer o teste em um novo projeto pra saber se o componente esta certo e o resultado foi positivo quanto ao funcionamento do componente ou seja o componente realmenteestá ok

Enviei pra vc no email, obrigado qualquer coisa estou no zap tbm 22 997369765
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
natanbh1
Colaborador
Colaborador


Registrado: Terça-Feira, 15 de Março de 2011
Mensagens: 3093
Localização: Belo Horizonte - MG

MensagemEnviada: Sex Mai 26, 2017 2:43 pm    Assunto: Responder com Citação

Recebi o seu projeto e creio que consegui descobri o problema.

Dentro da pasta do projeto há arquivos com o mesmo nome e unit do componente (EAppProt e TEvAppProtect):

O compilador verifica as bibliotecas que estão na pasta da aplicação primeiro e depois em outros locais.
Por isso não se encontrava a unit correta para compilação.

Exclua os seguintes arquivos:
    - TEvAppProtect.dfm
    - EAppProt.pas
    - EAppProt.dcu

E teste a compilação novamente.
_________________
''A persistência é o caminho para o êxito.''
Charlie Chaplin
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Enviar E-mail
janiltojack
Novato
Novato


Registrado: Quarta-Feira, 24 de Mai de 2017
Mensagens: 8

MensagemEnviada: Sex Mai 26, 2017 5:29 pm    Assunto: [RESOLVIDO ] Erro ao compilar Responder com Citação

natanbh1 escreveu:
Recebi o seu projeto e creio que consegui descobri o problema.

Dentro da pasta do projeto há arquivos com o mesmo nome e unit do componente (EAppProt e TEvAppProtect):

O compilador verifica as bibliotecas que estão na pasta da aplicação primeiro e depois em outros locais.
Por isso não se encontrava a unit correta para compilação.

Exclua os seguintes arquivos:
    - TEvAppProtect.dfm
    - EAppProt.pas
    - EAppProt.dcu

E teste a compilação novamente.


Sucesso amigo compilou agora, vc matou o problema ta de parabéns e muito obrigado. Rapaz vc me salvou de ter que refazer tudo.

Novamente obrigado!!
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