Ir para conteúdo
  • Cadastre-se

dev botao

Metodo não existe em ACBrDFeHttpIndy


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

Recommended Posts

Encontrei um problema na nova versão do ACBr trunk 17130 que instalado no Delphi 10.3.1 Rio.

Ao compilar no meu projeto ele acusa que os métodos e propriedades não existem mais em ACBrDFeHttpIndy.pas:

FIndyReqResp.SendTimeout    := TimeOut;

FIndyReqResp.CheckContentType;

Procurei os mesmos nas unit Soap.SOAPHTTPTrans e não foi encontrado. Acredito que a embarcadero deve ter modificado esta unit.

Preciso urgente deste novo implementação e ajuste, pois não consigo compilar meu projeto.

 

Bug ACBR.png

Link para o comentário
Compartilhar em outros sites

  • Moderadores
10 minutos atrás, Guilherme Wiethaus disse:

Procurei os mesmos nas unit Soap.SOAPHTTPTrans e não foi encontrado. Acredito que a embarcadero deve ter modificado esta unit.

Preciso urgente deste novo implementação e ajuste, pois não consigo compilar meu projeto. 

Sim, essa unit não é compatível com o Delphi Rio.

Já existe uma diretiva para não utilizar Indy quando usando essa versão do Delphi no ACBr.inc:

// INDY mudou muito no Delphi RIO, e as Units do ACBr ainda não foram ajustadas
{$IFDEF DELPHIX_RIO_UP}
 {$DEFINE DFE_SEM_INDY}
{$ENDIF}

Execute novamente o ACBrInstall_Trunk2.exe marcando a opção de remover arquivos antigos.

E veja se o seu projeto não está adicionando explicitamente esssa unit.

  • Curtir 1
Equipe ACBr BigWings
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

 

 

Link para o comentário
Compartilhar em outros sites

  • Moderadores
2 minutos atrás, BigWings disse:

Sim, essa unit não é compatível com o Delphi Rio.

Já existe uma diretiva para não utilizar Indy quando usando essa versão do Delphi no ACBr.inc:


// INDY mudou muito no Delphi RIO, e as Units do ACBr ainda não foram ajustadas
{$IFDEF DELPHIX_RIO_UP}
 {$DEFINE DFE_SEM_INDY}
{$ENDIF}

Execute novamente o ACBrInstall_Trunk2.exe marcando a opção de remover arquivos antigos.

E veja se o seu projeto não está adicionando explicitamente esssa unit.

Podemos dizer que isso não é um bug! apenas falta de usuário disposto a fazer os ajustes necessários para que a unit volte a compilar no delphi Rio.

Mas se você tiver interesse em fazer as adequações pode enviar que com certeza será analisado e enviado sua contribuição para o SVN.

 

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

Bom dia.

Eu achei uma indicação no Indy, na unit IdStackConsts.pas (Indy já instalado original no Delphi 10.3.1)

Na parte:

{
SocketOptionName.SendLowWater;//  Specifies the total per-socket buffer space reserved for receives. This is unrelated to the maximum message size or the size of a TCP window.
SocketOptionName.SendTimeout;//  Send timeout. This option applies only to synchronous methods; it has no effect on asynchronous methods such as BeginSend.
}

...é a único lugar que aparece ou menciona o SendTimeout em todos os módulos dentro da pasta Embarcadero\Studio\20.0\source\soap

Em nenhum outro lugar aparecem estes:

sopa.Soap.SOAPHTTPTrans.THTTPReqResp.SendTimeout
sopa.Soap.SOAPHTTPTrans.CheckContentType

Verifiquei que o evento também foi mudado na nova versão:

de: OnBeforePost(const HTTPReqResp: THTTPReqResp; Data: Pointer);
para: OnBeforePost(const HTTPReqResp: THTTPReqResp; Client: THTTPClient);

Alterei algumas coisas colocando {$IF CompilerVersion >= 33} e compilou direitinho

Parece que estas propriedades e métodos não fazem mais diferença, pois pelo que entendi isto está explicito dentro do Indy além que que já roda em modo assíncrono. Posso estar enganado quanto a isto.

Não sei onde mais estas alterações se fazem necessário, mas de forma paliativa resolveu o meu caso deixando o indy ativo.

Estou enviando em anexo a alteração que fiz e nada mais deu errado. Pelo menos até este ponto.

Procurei em alguns fórum nada muito significativo. O Help que vem com o Delphi 10.3.1 menciona estas funções e propriedades mas não existem nas suas units correspondentes. Não há nenhuma documentação indicando na Embarcadero estas mudanças.

Abaixo link de algumas indicações que falam nos forums:

https://en.delphipraxis.net/topic/524-rio-soap-gzip-response-problem/

Tem outro link que fala sobre outros assuntos, mas infelizmente não tenho aqui agora. Vou tentar enviar mais tarde.

 

ACBrDFeHttpIndy.pas

Link para o comentário
Compartilhar em outros sites

  • Consultores
  • 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

  • Este tópico foi criado há 1746 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.
Visitante
Este tópico está agora fechado para novas respostas
×
×
  • 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.