J'ai une solution, principalement C#, mais avec quelques projets VC++, qui est poussée par notre processus de publication standard (scripts perl et bash sur les boîtes Unix). Actuellement, l'initiative consiste à valider les versions DLL et EXE au cours du processus. Tous les versions sont définies de sorte que la version du fichier soit au format $Id: $
(entre le deux-points et le deuxième dollar doit être un hachage git commit), et la version du produit est au format $Hudson Build: $
(entre le deux-points et le second dollar devrait être un chaîne représentant les détails de construction de hudson).Comment faire pour valider Windows VC++ DLL sur les systèmes Unix
Actuellement, ce système fonctionne très bien pour les projets C# parce que cette information de version est stockée sous forme de chaînes simples dans le code compilé (vous pouvez littéralement utiliser la commande unix strings
et voir les informations de version); le problème est que les projets VC++ n'exposent pas ces informations sous forme de chaînes (j'ai utilisé un système Windows pour vérifier que les informations de version sont correctement définies), donc je ne sais pas comment extraire la version sur un système Unix. Des suggestions pour A) Obtenir une représentation sous forme de chaîne de la version intégrée dans le code compilé, ou B) Un utilitaire/script qui peut extraire cette information?
Ooh, je suis content que je n'ai pas eu le temps de faire d'autres travaux sur ce premier! Merci pour la solution simple. – Guildencrantz