Les fichiers Windows PE (exécutable portable) contiennent des métadonnées qui apparaissent dans la boîte de dialogue Propriétés du fichier sous l'onglet Détails. Il semble que des métadonnées arbitraires peuvent apparaître ici. Ce que je voudrais faire est d'ajouter un morceau de métadonnées à une bibliothèque de classe C# que je construis dont la valeur est l'ID de validation du git repo HEAD à partir duquel le projet a été construit. Je ne peux pas simplement utiliser le CLR AssemblyVersionAttribute
pour définir l'ID de validation git car le CLR requiert que cela apparaisse dans le format de version standard a.b.c.d
. De plus, j'aimerais idéalement garder le numéro de version significatif pour l'utilisateur, mais toujours avoir un moyen de rechercher, étant donné le fichier PE réel, l'identifiant de validation qui pourrait le recréer.Comment ajouter des métadonnées PE?
S'il y a une API managée pour le faire, tant mieux, mais je suis prêt à P/Invoke pour y arriver.
Checkout: [mythe de métadonnées CLR dans un module géré?] (Http://izlooite.blogspot.com/2009/09/what-is-clr-metadata-in-managed-module.html#more) –