Question

Jusqu'à présent, j'utilisais Indy 10 sans problème, mais après un récent problème avec l'installation du pack de composants TMS, je recherche un autre moyen de mettre à niveau Indy.TMS s'installe correctement sur un système propre avec CB2010, mais lorsque je mets à niveau Indy en utilisant la procédure ci-dessous, j'obtiens des erreurs au démarrage de l'IDE et juste après l'installation de TMS - l'erreur est : The procedure entry point @Idhttp@TidCustomHTTP@GetRequestHeaders$qqrv could not be located in the dynamic link library IndyProtocols140.bpl.Évidemment, il y a un problème de mon côté car TMS s'installe sur une installation propre sans mise à niveau Indy.

Alors peut-être qu'il pourrait s'installer correctement si j'écrase les fichiers Indy par des versions plus récentes.

Voici la procédure d'installation pour la mise à niveau Indy que j'utilise actuellement (et qui a fonctionné jusqu'à l'installation de TMS) :

  1. Démarrez l'IDE et supprimez Indy10 Protocols Design Time et Indy10 Core Design Time paquets

  2. Exécutez ce script qui supprime les anciens fichiers Indy :

    del /q "c:\Program Files\Embarcadero\RAD Studio\7.0\lib\Indy10\*.*"
    del /q "c:\Program Files\Embarcadero\RAD Studio\7.0\lib\debug\Indy10\*.*"
    del /q "c:\Program Files\Embarcadero\RAD Studio\7.0\include\Indy10\*.*"
    del /q /s "c:\Program Files\Embarcadero\RAD Studio\7.0\source\Indy\Indy10\*.*"
    
    
    del "c:\Program Files\Embarcadero\RAD Studio\7.0\lib\debug\IndyCore.bpi"
    del "c:\Program Files\Embarcadero\RAD Studio\7.0\lib\debug\IndyCore.lib"
    del "c:\Program Files\Embarcadero\RAD Studio\7.0\lib\debug\IndyProtocols.bpi"
    del "c:\Program Files\Embarcadero\RAD Studio\7.0\lib\debug\IndyProtocols.lib"
    del "c:\Program Files\Embarcadero\RAD Studio\7.0\lib\debug\IndySystem.bpi"
    del "c:\Program Files\Embarcadero\RAD Studio\7.0\lib\debug\IndySystem.lib"
    del "c:\Program Files\Embarcadero\RAD Studio\7.0\lib\release\IndyCore.bpi"
    del "c:\Program Files\Embarcadero\RAD Studio\7.0\lib\release\IndyCore.lib"
    del "c:\Program Files\Embarcadero\RAD Studio\7.0\lib\release\IndyProtocols.bpi"
    del "c:\Program Files\Embarcadero\RAD Studio\7.0\lib\release\IndyProtocols.lib"
    del "c:\Program Files\Embarcadero\RAD Studio\7.0\lib\release\IndySystem.bpi"
    del "c:\Program Files\Embarcadero\RAD Studio\7.0\lib\release\IndySystem.lib"
    del "c:\Program Files\Embarcadero\RAD Studio\7.0\bin\IndyCore140.bpl"
    del "c:\Program Files\Embarcadero\RAD Studio\7.0\bin\IndyProtocols140.bpl"
    del "c:\Program Files\Embarcadero\RAD Studio\7.0\bin\IndySystem140.bpl"
    del "c:\Program Files\Embarcadero\RAD Studio\7.0\bin\dclIndyCore140.bpl"
    del "c:\Program Files\Embarcadero\RAD Studio\7.0\bin\dclIndyProtocols140.bpl"
    
  3. Décompressez la nouvelle installation d'Indy dans "c:\code\indy" et ouvrez IndySystem140.dpk, IndyCore140.dpk, IndyProtocols140.dpk, dclIndyCore140.dpk, dclIndyProtocols140.dpk dans cet ordre.

  4. Modifier les options de compilation pour Generate all C++ Builder files (including package libs) pour chacun des packages ci-dessus.

  5. Définissez tous les packages sur Release et construisez-les dans l’ordre ci-dessus.

  6. Installez également pour les deux derniers

  7. Ajoutez les chemins d'inclusion et de bibliothèque à "c:\code\indy\Core" (et même pour les protocoles et le système)

J'ai également joué avec le script FullC140.bat fourni avec Indy, mais je ne l'ai pas tout à fait installé correctement comme ci-dessus.

Quelqu'un a-t-il réussi à mettre à jour Indy et à installer TMS par-dessus ?

Mon script batch supprime-t-il certains fichiers alors qu'il ne devrait pas le faire ?

Était-ce utile?

La solution

Le package TMS erroné a été compilé pour établir un lien avec les packages Indy préinstallés avec l'EDI.Votre mise à niveau d'Indy rompt ce package TMS en raison d'un changement d'interface dans l'unité IdHTTP.pas d'Indy (en particulier, le GetRequestHeaders() méthode de TIdCustomHTTP a été renommé en GetRequest()).Pour résoudre l'erreur, soit le package TMS défaillant devra être recompilé pour établir un lien avec les packages Indy mis à niveau, soit vous devrez annuler cette modification dans IdHTTP.pas et recompiler à nouveau Indy.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top