Comment puis-je incrémenter la version dans les fichiers projet pour les projets delphi? J'utilise Delphi 10 pour le développement d'applications win32. Je compose de bdsproj, dpr & res fichiers pour un projet.Scripts de génération automatique
Répondre
Si vous utilisez Delphi pour créer votre application, vous pouvez activer l'incrémentation automatique du numéro de build sous les paramètres du projet.
Nous utilisons un utilitaire self-made pour générer une ressource de version (fichier rc) basée sur les valeurs d'un fichier ini. Ensuite, nous compilons le fichier rc dans un fichier res, que nous incluons dans le projet. Nous utilisons des scripts finalbuilder pour automatiser le processus. Je sais que finalbuilder a son propre support pour versionnumbers, mais nous ne l'utilisons pas. Je ne sais pas pourquoi, cependant ...
J'utilise un programme qui gère le numéro de version dans un fichier .ini et génère un fichier .res dans l'événement de pré-construction du projet. Ce fichier .res contient uniquement la version, pas l'icône. L'icône est contenue dans un fichier .res distinct. Les deux sont inclus dans le fichier DPR du projet:
{$R *_version.res}
{$R *_icon.res}
Seul le * __ fichier i_con.res est vérifié dans conntrol source, la version, comme dit ci-dessus est maintenu dans un fichier .ini, de sorte que les * _version.res fichier peut être généré chaque fois que nécessaire. Cela permet de se débarrasser de l'ennui du fichier .res et .dproj en constante évolution en raison de l'incrémentation du numéro de build. Oh, je viens de me rendre compte que vous avez dit "Delphi 10", que je pense être Delphi 2006. Cette version de Delphi n'avait pas d'événements pré et post-construction, donc vous devez appeler le programme pour maintenir la version toi même.
Si vous cherchez un moyen non-gui de faire cela alors je pense que si vous regardez dans le fichier bdsproj vous trouverez une section dans le xml où la version est écrite, vous pouvez le changer ici. La prochaine fois qu'il construira, il utilisera cette version.
AFAIK c'est l'IDE qui régénère le fichier .res en utilisant les informations du fichier proj. Lors de la construction à partir de la ligne de commande (même en utilisant MSBuild), le fichier .res n'est pas régénéré, il utilise simplement celui qu'il trouve. –
J'utilise un outil de script de construction approprié FinalBuilder qui possède un ensemble de commandes de gestion de propriétés qui peuvent définir tous les éléments d'une construction sur la même version. Cela me donne la cohérence de numérotation à travers une construction, et une charge entière plus aussi. Si vous n'avez pas d'outil de construction approprié et que vous utilisez toujours des fichiers batch ou des fichiers équivalents, c'est le moment d'aller voir les options. Ça vaut vraiment le coup.
J'ai déjà utilisé un programme appelé StampVer, Vous devez déjà avoir les informations de version dans le fichier pour utiliser StampVer. StampVer est un logiciel gratuit mais pas Open Source.
La bonne chose à propos de stampver, c'est qu'il peut auto-incrémenter pour vous.
+1 J'ai écrit stampver il y a 12 ans, étonné qu'il soit encore utilisé :) –
@Paul oui ça s'habitue, merci! – kenny
DDevExtensions a un incrément de construction, je ne sais pas comment obtenir la version delphi 2006, mais je pense que cela existe et c'est très pratique.
Lire cet article http://www.thedelphigeek.com/2008/01/tdm-rerun-2-better-build-process.html par Primoz Gabrijelcic, initialement publié dans The Delphi Magazine. Il contient une description complète de ce que vous devez faire.
Avez-vous besoin d'incrémenter le numéro de build lorsque vous compilez depuis l'EDI ou à l'extérieur? L'IDE peut l'incrémenter automatiquement, il suffit de vérifier l'indicateur dans les paramètres du projet. Incrémenter ce nombre en dehors de l'EDI n'est pas simple car il est stocké dans le fichier .res par défaut qui est géré et régénéré par l'EDI. Le compilateur de ligne de commande ne le modifiera pas. Il y a plusieurs façons de le modifier (comme l'expliquent d'autres réponses), et généralement cela fonctionne mieux avec un système de construction qui peut générer les numéros de build, surtout si plus d'un développeur travaille sur le projet. J'ai posté QC# 70564 problème pour demander que les informations de version peuvent être définies par le compilateur de ligne de commande.
- 1. génération d'entrée automatique django
- 2. Génération rapide de scripts SQL Server 2005
- 3. SQL Server 2008 Génération automatique des scripts de modification Problème hérité
- 4. Outil de génération automatique de cache HTML
- 5. Génération automatique de stubs de fonction
- 6. Génération automatique de beans entité EJB3
- 7. Génération automatique de balises META en PHP
- 8. XSD et génération automatique de classe/message
- 9. Quelle convention de Concordion permet la génération automatique de chapelure?
- 10. Création d'un modeste script de modification SQL de génération automatique?
- 11. Génération automatique de colonnes/champs liés pour une vue Details
- 12. Génération automatique de fichiers source et doc dans NetBeans
- 13. Est-il possible d'utiliser la génération automatique et la génération de schéma avec Fluent NHibernate?
- 14. Génération automatique des méthodes stub qui jettent dans Eclipse
- 15. Génération de scripts SQL pour SQL Server à l'aide de studio de gestion SQL
- 16. génération de test automatisée?
- 17. hibernate découverte automatique et génération de mappages de base de données avec les POJO
- 18. Génération automatique d'un fichier de concepteur DataContext lors de l'utilisation de SqlMetal et Visual Studio
- 19. Quels outils de génération automatique de code sont disponibles pour les classes Castle ActiveRecord?
- 20. Génération automatique de code pour le pont Objective C vers C++
- 21. Quels sont les inconvénients de la génération automatique des classes dans Hibernate?
- 22. Génération automatique de fichiers ant à partir d'un modèle en eclipse
- 23. tutoriels de scripts hook?
- 24. Scripts de fonctionnalité
- 25. Personnalisation de la génération de séquence Hibernate
- 26. Génération de correctifs JBPM Workflow
- 27. Création automatique à l'aide de VSS
- 28. SDLC Mangement pour les scripts de construction TFS
- 29. Exécution de plusieurs scripts Btrace
- 30. génération de frappe
Vous cherchez un moyen de changer automatiquement les numéros de version dans un grand nombre de projets sans trop de cliquer? Ou cherchez-vous une fonctionnalité d'auto-incrémentation dans laquelle la version change chaque fois que vous construisez le projet, comme dans VB? –
Delphi 10 n'existe pas. Cela aide si vous utilisez une version réelle dans votre question afin que les gens sachent ce que vous utilisez. ("Delphi 10" serait Delphi 2006, je crois.) –