Installation de packages de composants

De RAD Studio
Aller à : navigation, rechercher

Remonter à Packages de conception

Tous les composants installés dans l’EDI le sont sous la forme de packages. Si vous écrivez vos propres composants, créez et compilez un package les contenant (voir Création et modification de packages). Le code source des composants doit suivre le modèle décrit dans Présentation de la création d'un composant.

Pour installer ou désinstaller vos propres composants ou les composants fournis par un tiers

  1. Si vous installez un nouveau package, copiez ou déplacez les fichiers package dans un répertoire local. Si le package est livré avec des fichiers .bpl, .dcp et .dcu, assurez-vous que vous les copiez tous (voir Packages et DLL standard). Le répertoire dans lequel sont stockés le fichier .dcp — et les fichiers .dcu, s'ils font partie de la distribution — doit être dans le chemin de la bibliothèque Delphi.
  2. Choisissez Composant > Installer des packages dans le menu de l'EDI, ou choisissez Projet > Options et cliquez sur l'onglet Packages. Une liste des packages disponibles apparaît dans la zone de liste Packages de conception.
    • Pour installer un package dans l'EDI, sélectionnez la case à cocher suivant le nom de package.
    • Pour désinstaller un package, effacez la case à cocher.
    • Pour voir la liste des composants inclus dans un package installé, sélectionnez le package et cliquez sur Composants.
    • Pour retirer un package de la liste, sélectionnez le package, puis cliquez sur Supprimer.
    • Pour ajouter un package à la liste :
    1. Cliquez sur Ajouter puis recherchez dans la boîte de dialogue Ajouter un package de conception le répertoire dans lequel se trouve le fichier .bpl (voir l'étape 1).
    2. Sélectionnez le fichier .bpl et cliquez sur Ouvrir.
  3. Cliquez sur OK.

Pour connaître les étapes à suivre pour installer le composant nouvellement créé, voir Recensement des composants.

Les composants du package sont installés sur les pages de la palette d'outils spécifiées dans les procédures RegisterComponents et portent les noms qui leur ont été assignés dans ces procédures.

Selon le type de projet, un nouveau projet est créé avec des sous-ensembles de tous les packages installés. Pour vérifier quels packages sont disponibles dans votre projet, ouvrez l'onglet Packages de la boîte de dialogue Options de projet.

Pour retirer des composants de la palette d'outils sans désinstaller de package, cliquez avec le bouton droit sur le composant pour invoquer le menu contextuel et choisissez Cacher le bouton "<NomComposant>".

Désactivation explicite du chargement intelligent des composants dans un package de conception

Par défaut, l'EDI utilise le chargement intelligent (différé) des packages de conception installés dans l'EDI. Lorsque l'EDI démarre, il ne charge pas immédiatement tous les packages installés. Initialement, seuls les composants des packages installés qui sont explicitement utilisés dans le groupe de projets sont chargés par l'EDI. Les packages qui ne sont pas chargés peuvent l'être automatiquement sur demande. Par exemple, lorsque le programmeur fait glisser un composant de la palette d'outils dans le Concepteur de fiches, le package dans lequel ce composant est recensé est chargé dans l'EDI. Le chargement intelligent permet de diminuer le délai d'ouverture de l'EDI et la mémoire utilisée.

Dans certains cas, vous devez désactiver le chargement intelligent des composants installés. Par exemple, dans un framework FireMonkey, un composant personnalisé peut définir un nouveau style. Vous pouvez installer dans l'EDI le package de conception recensant ce composant personnalisé. Lorsque vous exécutez l'EDI en chargeant un projet qui n'utilise pas de composant recensé de ce package, l'EDI utilise, par défaut le chargement intelligent de composants. Par conséquent, les composants personnalisés de ce package ne sont pas chargés dans la mémoire. En conséquence, l'EDI ne connaît pas les styles définis par ces composants. Les styles sont référencés dans des livres de styles à l'aide des chaînes StyleName. Par conséquent, l'utilisation de certaines chaînes StyleName définies pour le composant personnalisé n'oblige pas l'EDI à charger ce composant personnalisé s'il n'est pas utilisé dans un projet chargé. L'ouverture d'un tel projet génère alors une erreur comme celle-ci :

Error reading <StyleBook1.ResourcesBin>: Class <ComponentClass> not found. 
Ignore the error and continue?
NOTE: Ignoring the error may cause components to be deleted or property
values to be lost.   

Si vous ignorez ce message d'erreur, le style référencé n'est pas connu du projet. Si vous construisez un tel projet et que vous exécutez l'application obtenue, l'application peut générer une erreur d'exécution si elle tente d'accéder à ce style.

Pour ce type de composants personnalisés, vous devez explicitement désactiver le chargement intelligent du package dans lequel ces composants sont recensés.

Pour désactiver le chargement des composants recensés dans un appel de package; appelez

ForceDemandLoadState(dlDisable)

pendant l'implémentation de la procédure Register d'un package si l'état de chargement de ce package doit être défini explicitement.

Voir aussi