Question

Le cas

Je suis en train de mettre à jour le INDY à la dernière version pour mon Delphi XE (Mise à jour 1), donc je téléchargé le dernier fichier Indy10 (Indy_4545.zip) indy.fulgan.com/ZIP .

Les paquets compiles voir avec succès et je peux maintenant même la nouvelle version 10.5.8.0 de la boîte de dialogue à propos, mais après un IDE redémarrer je reçu un message disant:

No se encuentra el punto de entrada del procedimiento @ Idhttp @ TIdCustomHTTP @ $ getRequestHeaders qqrv en la biblioteca de vínculos dinámicos IndyProtocols150.bpl.

Ma traduction libre en anglais:

Point d'entrée introuvable pour la procédure @ Idhttp @ TIdCustomHTTP @ $ getRequestHeaders qqrv pas trouvé sur la bibliothèque de lien dynamique IndyProtocols150.bpl.

Après une rapide comparaison anciens et nouveaux IdHTTP.pas j'ai trouvé beaucoup de changements sur la classe TIdCustomHttp, y compris le changement de nom de certaines méthodes

  • GetResponseHeaders à GetResponse
  • getRequestHeaders à GetRequest
  • SetRequestHeaders à SetRequest

Avec changement de méthode entreprises publiques / publiées dans ce domaine et d'autres interfaces et les classes.

Après la mise à jour, je me suis beaucoup de paquets à défaut de charge, y compris dclcxPivotGridOLAPD15.bpl, qui à son tour dépend de dclDataSnapServer150.bpl qui rencontre la méthode manquante sur le bpl.

AFAIK Je ne peux pas recompiler le dclDataSnapServer150.bpl (et peut-être d'autres paquets défaillants, je viens d'arrêter ici).

support DataSnap et DevExpress sur l'IDE est un must pour mon jour le jour si

Les questions

  1. Y at-il un chemin pré-établi en toute sécurité pour la mise à jour à la nouvelle INDY pour Delphi XE?
  2. Sinon, suis-je du bon côté d'un peu desséchant le code source en créant les anciennes méthodes publiques et appeler les nouvelles de la part de la mise en œuvre?
  3. que je manque quelque chose d'autre ou suis-je vraiment coincé avec INDY 10.5.7 jusqu'à la prochaine mineur Delphi / version majeure?
Était-ce utile?

La solution 3

A partir d'autres réponses de commentaires et principalement pour de Remy:

Il est impossible d'installer Indy 10.5.8.0 sans casser DataSnap Delphi XE Mise à jour 1.

Autres conseils

[Installation Indy pour Delphi XE]

Oui, le processus d'installation est fastidieux, mais ça vaut le coup pour le faire droit.

Ceci est pour tous les composants Indy sauf SSL. (Je ne l'ai pas essayé un des trucs SSL encore.)

.) et détruire tous les Seek fichiers Indy qui viennent avec Delphi. Ceux-ci sont    pas bon que le projet Indy est mis à jour chaque jour avec de nouvelles corrections de bugs.    Si Delphi prend l'un des anciens fichiers au lieu de votre nouvelle bibliothèque Indy frais,    vous obtiendrez des erreurs folles de l'IDE à tous les différents moments qui sont très difficiles à    trace.

i. Aller au composant -.> Installer des packages, puis supprimer complètement tous les paquets qui commencent par « Indy »

ii. Fermer Delphi.

iii. Effacer tous les fichiers qui correspondent à "dclIndy * .bpl" et "Indy * .bpl" à partir du dossier Bin de Delphi.
     (C: \ Program Files \ Embarcadero \ RAD Studio \ 8.0 \ bin)

iv. Effacer tous les fichiers qui correspondent à "Indy * .dcu" et "Id * .dcu" ^^^ dans les Lib sous-dossiers de Delphi.
    (C: \ Program Files \ Embarcadero \ RAD Studio \ 8.0 \ lib \ win32 \ debug)
    (C: \ Program Files \ Embarcadero \ RAD Studio \ 8.0 \ lib \ win32 \ release)
    ^^^ Avertissement: Attention pour DCU non Indy qui arrive à commencer par les lettres « id »                  comme "idispids.dcu" et "idoc.dcu"

v. Supprimez l'intégralité du dossier source Indy10:
    (C: \ Program Files \ Embarcadero \ RAD Studio \ 8.0 \ source de \ Indy10)

B.) Téléchargez la dernière Indy10_XXXX.zip de http://indy.fulgan.com/ZIP /    (Si vous obtenez une erreur de compilation ou d'une erreur d'exécution en utilisant ce fichier zip pour l'une des étapes     ci-dessous - ne soyez pas découragés! Re-télécharger le fichier zip le jour suivant et essayer     encore. Ce fichier zip est mis à jour tous les jours et il y a une chance qu'il peut y être     quelques bugs / erreurs sur un jour donné.)

C.) Extraire uniquement les dossiers système, de base et des protocoles dans votre propre dossier de bibliothèque Indy. ex.
   (C: \ MyDelphiComponents \ Indy \ Core)
   (C: \ MyDelphiComponents \ Indy \ System)
   (C: \ MyDelphiComponents \ Indy \ Protocols)

D). Lancement Delphi. Ignorer toutes les boîtes de dialogue de package forfait: Ce sont les packages Embarcadero    qui se fondent sur Indy! (Cliquez sur Ok toutes les erreurs, et indiquent que tout a échoué    les paquets ne doivent pas être chargés à nouveau.)

E) Allez dans Options -.> Environnement Options -> Delphi Options -> Navigation Chemin    - chemins Retirez commençant par $ (BDS) \ Lib \ Indy10

F) Allez dans Options -.> Environnement Options -> Delphi Options -> Chemin de la bibliothèque    -. Ajouter votre nouveau système, les dossiers de base, et les protocoles de l'étape C à chemin de la bibliothèque de Delphi

G) Effectuez les 5 actions suivantes pour.:    (Il suffit de dire OK pour les boîtes de dialogue sur la mise à niveau du projet.)


Important:

Après le chargement de chaque DPK et avant chaque génération, allez à:

Projet -> Options -> - Description> Construire le contrôle

Set bouton radio "Explicite Reconstruire".

(En fait, cela est facultatif, mais je fais toujours des paquets Explicite Rebuild    parce qu'ils semblent plus faciles à manipuler de cette façon, mais j'aimerais entendre ce que    d'autres personnes pensent à ce sujet ...)


  1. Construire - System \ IndySystem150.dpk
  2. Construire - Noyau \ IndyCore150.dpk
  3. Construire d'abord, puis sur Installer - Noyau \ dclIndyCore150.dpk
  4. Construire - Protocoles \ IndyProtocols150.dpk
  5. Construire d'abord, puis sur Installer - Protocoles \ dclIndyProtocols150.dpk

** Vérifiez bien que vous avez défini « Reconstruire explicite » sur tous les forfaits! **

H) Enfin, passez à la composante -.> Installer des packages et trouver tous les paquets qui comptent    sur Indy qui ont été désactivés lors de l'étape D. Réactiver les et redémarrez Delphi.    (Si votre nouveau Indy n'a pas changé trop de celui sorti avec Delphi, les     les paquets utiliseront le nouveau Indy!)

++ Remarque, vous ne pouvez pas recevoir d'erreurs tout de suite quand les réactivant Embarcadero     paquets, mais ils peuvent apparaître à des moments aléatoires plus tard. Par exemple, je viens d'installer     Indy10_4548.zip et tous les paquets réactivées semblait bien. Puis un jour plus tard sur     le bleu, l'IDE m'a jeté un message qui dit qu'il n'a pas pu trouver dans getRequestHeaders     TIdCustomHTTP et que le dclWindowsAzureManagement150.bpl avait du mal comme     résultat. Donc, je devais revenir en arrière et désactiver ce package Windows Azure dans l'IDE.

vous AFAIK allez perdre certains paquets qui dépend fortement de la version Indy déployée avec Delphi, notamment la nouvelle Datasnap.

Vous pouvez essayer de construire vos paquets onwn à utiliser au lieu de les standards qui ne peuvent pas être recompilées, tant que toutes les unités nécessaires sont disponibles.

à mon humble avis Embarcadero devrait trouver une solution au sujet de son propre code en fonction d'une bibliothèque « instable » comme Indy. Ce n'est pas acceptable dans un environnement professionnel, d'autant plus qu'ils sont incapables de libérer les mises à jour officielles, y compris les corrections de bugs de Indy au-delà de quelques mois de la libération. Par exemple, je trouve que dernièrement message Indy 10.5.5 tronque analyse syntaxique mail adresses, cela se produit pas dans 10.5.8. Bien sûr, le comportement 10.5.5 n'est pas acceptable, je suis obligé de mettre à jour ...

Bien que je ne l'utilise Delphi XE mon auto, mais la version 2010. J'ai pu mettre à jour les composants Indy pour la version la plus actuelle, avec l'aide de ce post débordement de la pile: étape par étape mise à niveau de 10 Indy en Delphi 2009

Je sais que la question est pour 2009 (mais les couvertures de réponse 2010 ainsi), mais cela a fonctionné pour moi dans la version 2010, donc je suppose que cela vous aidera aussi. Je vous recommande de lire les commentaires avais, car il y a quelques bons conseils là-bas aussi. Espérons que cela aide.

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