
Envoyé par
bacelar
Cela n'a rien à voir avec l'IDE, qui n'est qu'un éditeur amélioré.
La différence entre les exécutables est très probablement le timestamp de génération que le linker initialise pour avoir une traçabilité correcte des éléments compilés.
Ce n'est pas parce que le code source n'a pas changé que le résultat est identique. La configuration du projet, de l'environnement de compilation sont au moins aussi important que le code source.
Normalement, si aucune modification n'est faite dans les sources et dans la configuration des projets, VS ne recompile pas l'exécutable.
Il régénère l'exécutable s'il y a des modifications ou si vous lui forcez la main.
Et à chaque régénération, le linker met un nouveau timestamp.
Cela est extrêmement pratique quand vous utilisez un serveur de symbole et un serveur de code source hébergé dans un gestionnaire de configuration logiciel comme TFS ou ClearCase.
En résumé, si vous travaillez de manière professionnelle, c'est une obligation.
Donc chercher à éviter cette fonctionnalité serait s'interdire d'utiliser tous les outils modernes de traçabilité des codes sources.
Pourquoi le processus de calcul du checksum ne fait-il pas parti intégrante du processus de génération de l'exécutable ?
Partager