2010-04-12 4 views
3

Je peux demander Delphi pour construire toutes les configurations à la fois - en cliquant sur commande « Créer des configurations » et appeler « Marque »:OTA de Delphi: existe-t-il un moyen d'obtenir une configuration active pendant la construction (D2010)?

Build all confs http://ftpmerou.free.fr/delphi/mutiple-config-build.png

Cela va construire toutes les configurations, l'un après l'autre.

Le problème est que nous avons un expert IDE, qui doit réagir aux événements de compilation. Nous enregistrons IOTAIDENotifier80 pour hooker des événements. Il y a des événements BeforeBuild et AfterBuild - nous sommes intéressés par ceux-ci. IOTAProject est transmis à chaque événement.

Le problème est: la configuration active n'est jamais modifiée. C'est à dire. si vous avez sélectionné la configuration "Debug" (en caractères gras) - tous les appels aux événements BeforeBuild/AfterBuild retourneront le profil de configuration de débogage (même si IDE compile les profils les uns après les autres). Je veux dire les propriétés de IOTAProject ici.

J'ai également essayé d'utiliser IOTAProjectOptionsConfigurations, mais sa propriété ActiveConfiguration retourne toujours le même profil "en gras", quel que soit le compilé courant.

La question est: existe-t-il un moyen d'obtenir le «vrai» profil actuel?

Répondre

1

Ce n'est pas exactement une réponse au problème. C'est un travail autour.

Ce n'est pas une bonne option, mais voici ce que je fais. J'ai un petit utilitaire de ligne de commande pour éditer des fichiers XML où je passe un XPath et une nouvelle valeur et un nom de fichier. Je l'utilise pour modifier le fichier .dproj. Cela me permet de définir la configuration active comme déboguer, libérer, etc. Une fois le fichier modifié, j'appelle bds.exe avec la ligne de commande appropriée pour compiler la configuration active. Bien qu'il ne soit pas aussi pratique que de faire un clic droit et de choisir «make», une fois qu'il est configuré, il est aussi simple que d'exécuter un lot.

Je n'ai pas testé comment cela interagit avec un expert IDE, mais vous pouvez facilement tester si ce plan fonctionnera pour vous en modifiant le fichier .dproj à la main. Une fois que vous savez si cela fonctionnera pour vous, vous pouvez créer l'éditeur batch et XML si nécessaire.

+0

Merci. Malheureusement, ce n'est pas acceptable :( – Alex

Questions connexes