Para começar baixe a versão mais recente através do endereço http://indy.fulgan.com/ZIP, no momento desta publicação, a última versão disponível é o build 4782.
No Delphi 7, vá na opção Component\Install Packages, localize a biblioteca Indy conforme a imagem abaixo, e remova a biblioteca clicando no botão Remove.
Feche o Delphi, pois é preciso remover as referências do Indy 9 na pasta de instalação do delphi. Vá até a pasta onde o delphi está instalado, por padrão "C:\Program Files\Borland\Delphi7". Renomeie os arquivos do Indy adicionando o sufixo indy9, caso você queirar restaurar em outro momento, ou apague os arquivos se sentir a vontade. Deve ficar conforme segue:
- Bin\indy70.bpl para Bin\indy70_indy9.bpl
- Bin\indy70.map para Bin\indy70_indy9.map
- Bin\dclindy70.bpl para Bin\dclindy70_indy9.bpl
- Bin\dclindy70.map para Bin\dclindy70_indy9.map
- Lib\indy.dcp para Lib\indy_indy9.dcp
- Lib\indy.dcu para Lib\indy_indy9.dcu
- Lib\dclindy.dcp para Lib\dclindy_indy9.dcp
- Lib\dclindy.dcu para Lib\dclindy_indy9.dcu
- Source\Indy para Source\Indy_9
Remova também todos os dcu's existentes dentro das pastas Lib e Lib\Debug, que tenham o nome iniciado com "id", por exemplo, "IdBaseComponent.dcu".
Descompacte o arquivo que você baixou. Dentro há uma pasta Lib e um arquivo Fulld7.bat que compila e instala para você, mais preferi fazer a instalação manualmente, para isso, é preciso compilar e instalar os seguintes pacotes, na sequência que segue:
- IndySystem70.dpk (in Lib\System) --> Apenas Compila
- IndyCore70.dpk (in Lib\Core) --> Apenas Compila
- IndyProtocols70.dpk (in Lib\Protocols) --> Apenas Compila
- dclIndyCore70.dpk (in Lib\Core) --> Compila e Instala
- dclIndyProtocols70.dpk (in Lib\Protocols) --> Compila e Instala
Agora só falta adicionar os novos arquivos ao LibraryPath do delphi:
- C:\Indy10\Lib\System
- C:\Indy10\Lib\Core
- C:\Indy10\Lib\Protocols
Era isso, agora seu Delphi 7 pode usufruir das melhorias e correção de bugs adicionadas ao Indy 10.
Qualque dúvida ou problema durante a atualização deixe um comentário.
Olá Fabrício,
ResponderExcluircom suas dicas acima consegui realizar a atualização.
Só teve 2 etapas que fiz diferente...
- O endereço para baixar o indy10, não sei se mudou da época da postagem prá cá, mas peguei neste endereço: http://indy.fulgan.com/ZIP/
- No momento de compilar as packages, precisei compilar e instalar a dclIndyCore70.dpk antes de compilar o IndyProtocols70.dpk, pois ele a exigiu como dependência.
Mas fora estes 2 pequenos detalhes foi perfeito. Parabéns pelo post, foi de extrema utilidade.
Olá Alexsandro, obrigado pelo feedback.
ResponderExcluirO link realmente estava incorreto, já fiz a correção, obrigado.
Quanto à sequencia de compilação dos pacotes, eu fiz o download da última versão novamente para conferir a seção Requires de cada pacote e parece estar OK.
Ola fabricio
ResponderExcluirNao estou conseguindo instalar de jeito nenhum o indy10 no delphi7.. Tens como me dar um auxilio pois sempre da erro na hora de instalar.
Desde ja obrigado
Olá Junior, pode me adicionar no gtalk que a gente conversa.
ResponderExcluirFabricio, tudo bem?
ResponderExcluirEstou tentando instalar o indy10 no delphi 7, conforme você orientou no acima, mas na hora de compilar o pacote IndySystem70.dpk está dando erros abaixo:
[Warning] IdWship6.pas(469): Symbol 'GIdIPv6FuncsAvailable' is deprecated
[Error] IdWship6.pas(515): Declaration expected but 'INLINE' found
[Warning] IdWship6.pas(1213): Symbol 'GIdIPv6FuncsAvailable' is deprecated
[Fatal Error] IdStackConsts.pas(85): Could not compile used unit 'IdWship6.pas'
o que pode ser?
um abraço
William Brum/ Belo Horizonte-MG
Isso é um bug no build do Indy. Na linha 515 da unit IdWship6.pas, substitua a diretiva inline; por {$IFDEF USE_INLINE}inline;{$ENDIF}
ResponderExcluirOi, estou tentando instalar os componentes Indy mas está ocorrendo esse erro quando tento compilar IndyCore70.dpk. Se puder me ajudar fico grato, estou com o update 5011 do svn.
ResponderExcluir[Error] IdBuffer.pas(304): Undeclared identifier: 'IIdTextEncoding'
[Fatal Error] IdBuffer.pas(400): Could not compile used unit 'IdResourceStringsCore.pas'
Obrigado pelas dicas!
ResponderExcluirNo meu caso eu instalei o arquivo : http://www.indyproject.org/downloads/10/indy10.0.52_source.zip
Funcionou redondo, bastando seguir a risca o seu passo-a-passo!
[]´s
Caro Fabrício,
ResponderExcluirColoquei para funcionar no Windows XP, mas consegui no Windows 7.
Tens alguma dica pra Windows 7
Não consegui no Windows 7.
ResponderExcluirTem alguma dica?
Cara vc é de mais, salvou minha vida, mto obrigada s2
ResponderExcluirObrigado Mariana.
ResponderExcluirOlá,
ResponderExcluirConsegui instalar ok no delphi 7 seguindo suas dicas.
Porem, quando fui utilizar um projeto com a opcao de "Build with runtime packages", dá o seguinte erro:
[Fatal Error] Required package 'indy' not found
Deduzo que as libs dinamicas do indy nao estao sendo localizadas.
Quando compilo sem essa opcao ativada, funciona 100%, porem estou usando um componente trial que demanda o runtime ativado.
Tens alguma idéia do que fazer nesse caso ?
Ou o que devo checar na instalacao para poder usar o indy nessa opcao ?
Abraco
Olá Leonardo,
ResponderExcluiracredito que o problema é o pacote do indy vem dentro da pasta Borland\Delphi7\Lib apenas com o nome "indy.dcp". Se observar na imagem, o nome do pacote que o delphi adiciona por default no Runtime Packages é "indy", mais esse pacote não existe mais, o pacote recém instalado se chama IndyCore70.
No Runtime Packages altere o nome de "indy" para "IndyCore70" que ele vai encontrar o package.
Instaley o Indy 10 e agora em um projeto me dá o seguinte erro: Error reading IdHTTPServer1.CommandHandlers: Property CommandHandler does not exist - Tem como você me ajudar?
ResponderExcluirGrato,
Jeová
Olé Jeová, essa property foi movida para a classe TIdCmdTCPServer. Se você não está utilizando CommandHandlers, pode simplesmente dar Ignore e continuar.
ResponderExcluirboa tarde, fabricio
ResponderExcluirQuando tento compilar aparece este erro. Tem alguma ideia?
[Fatal Error] IndySystem70.dpk(24): Required package 'rtl' not found
Olá,
ResponderExcluirtalvez você tenha removido acidentalmente o diretório Lib do delphi do seu Library Path.
Adiciona o caminho $(Delphi)\Lib no seu Library Path
Olá, baixei hoje o Indy10_5121.zip e ele está me dando o seguinte erro:
ResponderExcluir[Error] IdURI.pas(93): Undeclared identifier: 'TIdIPVersion'
coloquei tudo na LibraryPath, o que pode ser? será que é essa versão? tens como me passar sua versão build 4782.
alguem já teve esse erro e sabe como resolver?
Fabrício,
ResponderExcluirValeu pelo artigo foi minha referência para realizar esse processo e foi tudo certo, está rodando certinho e enviando e-mail para "smtp.office365.com" onde o indy9 não funciona para "smtp.office365.com"
Obrigado
André
Estou com o mesmo erro, conseguiu resolver?
ResponderExcluirresolvi sim, na verdade essa versão que peguei estava bugada, uns 2 dias depois saiu uma nova release que funcionou de primeira. Se quiser te mando a versão que estou utilizando. -> rui@ibs.inf.br
ResponderExcluirFabricio o que você indica para consumir serviços REST? Estou precisando fazer um POST e segui o exemplo nesse link:
ResponderExcluirhttp://stackoverflow.com/questions/9743591/delphi-rest-api-post-sample
procedure TForm1.Button1Click(Sender: TObject);
var jsonToSend:TStringList;
http:TIDHttp;
begin
http := TIDHttp.Create(nil);
http.HandleRedirects := true;
http.ReadTimeout := 5000;
jsonToSend:=TStringList.create;
jsonToSend.Add('{ Your JSON-encoded request goes here }');
Memo1.Lines.Text:=http.Post('http://your.restapi.url', jsonToSend);
jsonToSend.Destroy;
http.Destroy;
end;
end.
Mas sempre recebo HTTP/1.1 400 Bad Request., não sei se pela versão do Indy, estou utilizando a 10 no caso.
Abs.
Ocorreu
ResponderExcluiruma falha: No tutorial indica que deve-se renomear alguns arquivos.
Executado todo o procedimento, ao reiniciar o Delphi, exibe a mensagem
da imagem abaixo. Creio que isso se deva ao fato de termos renomeado o
arquivo de Bin\indy70.bpl para Bin\indy70_indy9.bpl. Creio também que no
processo de instalação deveria ter criado novamente este arquivo na
pasta (ou não???). Executei tanto o arquivo .bat como o procedimento
manual mas não obtive êxito. Procurei o arquivo indy70.bpl na pasta na
qual foram salvos os fontes (para copiar manualmente) e também não
gerou.
Percebi
que foi criada uma pasta chamada D7, onde são gerados os DCUs e os
BPSs. Mesmo referenciando-a no Library Path não há êxito.