Ir para conteúdo
  • Cadastre-se

dev botao

Incompatibilidade no ACBrEAD


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

Recommended Posts

Prezados,

Estou com dificuldades na assinatura dos arquivos e fui verificar o exemplo em "..\Exemplos\ACBrEAD\Delphi" porém ao compilar recebo a mensagem:

[Error] EADTeste1.pas(293): Too many actual parameters.

O erro está em

     ChavePub := ACBrEAD1.ConverteXMLeECFcParaOpenSSL( OpenDialog1.FileName, False ) ;

que não deve ter o segundo parâmetro.

E ao dar um duplo clique no objeto ACBrEAD1 aparece a mensagem: Property and method ACBrEAD1GetChavePublica are not compatible.

O mesmo problema ocorre em minha aplicação pois não estou conseguindo o método para informar a minha chave privada.

Uso Delphi 7.

[]s,

Maurício

Link para o comentário
Compartilhar em outros sites

Prezados,

Estou com dificuldades na assinatura dos arquivos e fui verificar o exemplo em "..\Exemplos\ACBrEAD\Delphi" porém ao compilar recebo a mensagem:

[Error] EADTeste1.pas(293): Too many actual parameters.

O erro está em

     ChavePub := ACBrEAD1.ConverteXMLeECFcParaOpenSSL( OpenDialog1.FileName, False ) ;

que não deve ter o segundo parâmetro.

E ao dar um duplo clique no objeto ACBrEAD1 aparece a mensagem: Property and method ACBrEAD1GetChavePublica are not compatible.

O mesmo problema ocorre em minha aplicação pois não estou conseguindo o método para informar a minha chave privada.

Uso Delphi 7.

Obrigado pelas modificações. Porém ao compilar o demo agora aparece a mensagem mostrada em anexo.

post-145-13548988106552.jpg

[]s,

Maurício

Link para o comentário
Compartilhar em outros sites

Não algum Bpl perdido ou unit dentro seu micro e esta apontando para ela de dentro de seu delphi?

Não há, apaguei as bpl e o Delphi reclamou da ausência. Parece-me um problema entre String e AnsiString.

[]s,

Maurício

Link para o comentário
Compartilhar em outros sites

Prezados, obrigado pelas respostas mas ainda não consegui resolver.

Com o próprio demo do componente fiz o seguinte:

Apaguei os métodos OnGetChavePrivada e OnGetChavePublica;

Removi o objeto ACBrEAD;

Salvei;

Ao compilar, claro, aparece o erro [Error] EADTeste1.pas(85): Undeclared identifier: 'ACBrEAD1';

Incluo o objeto ACBrEAD no form;

Ao clicar no evento OnGetChavePrivada o Delphi cria a assinatura da forma abaixo:

procedure TForm1.ACBrEAD1GetChavePrivada(var Chave: String);

begin

Parece haver uma incompatibilidade com a definição abaixo:
  TACBrEADGetChave = procedure(var Chave: AnsiString) of object ;


  EACBrEADException = class(Exception);


  { TACBrEAD }


  TACBrEAD = class(TComponent)

  private

    fsOnGetChavePrivada: TACBrEADGetChave;

    fsOnGetChavePublica : TACBrEADGetChave ;

Por favor, peço uma luz

[]s,

Maurício

Link para o comentário
Compartilhar em outros sites

  • Consultores

Qual foi a última vez que desinstalou e reinstalou os componentes?

[]'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

Qual foi a última vez que desinstalou e reinstalou os componentes?

Prezado Elton,

Refiz a instalação totalmente neste final de semana, inclusive voltei o ACBr para a versão 1504 e fui atualizando segundo o log mas o problema persiste. Se mudo a assinatura do método de AnsiString para String o erro desaparece.

[]s,

Maurício

Link para o comentário
Compartilhar em outros sites

  • Consultores

Entendi... Mas a cada atualização que você fez, você reinstalou o componente? Ou pelo menos na última atualização você reinstalou?

É que essa mensagem de erro costuma acontecer quando o código fonte está de um jeito, mas o componente que foi instalado está diferente.

Por exemplo a assinatura do evento foi instalado como String, mas agora o código fonte está como AnsiString.

Precisaria ter certeza que não é esse o problema...

[]'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

Entendi... Mas a cada atualização que você fez, você reinstalou o componente? Ou pelo menos na última atualização você reinstalou?

É que essa mensagem de erro costuma acontecer quando o código fonte está de um jeito, mas o componente que foi instalado está diferente.

Por exemplo a assinatura do evento foi instalado como String, mas agora o código fonte está como AnsiString.

Precisaria ter certeza que não é esse o problema...

Reinstalei, inclusive apagando as bpls.

Fiz todo esse processo utilizando minha aplicação. Farei um teste agora refazendo o ACBr seguindo o log do exemplo do componente desde a versão 1975.

[]s,

Maurício

Link para o comentário
Compartilhar em outros sites

  • Consultores

Tente fazer isso só com a versão mais recente.

[]'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

  • Este tópico foi criado há 4262 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.