Voici le scénario:code source même sur deux machines donnent différents comportement exécutable
projet A Application Windows stockée dans SVN est utilisé pour créer un fichier exécutable. Normalement, un serveur de construction gère le processus de construction et crée des générations à intervalles réguliers qui sont utilisés par les tests. Dans ce cas particulier, on m'a demandé de modifier une construction spécifique et de créer l'exécutable.
Je ne suis pas entièrement sûr si le serveur de construction modifie les fichiers du projet, mais je sais qu'il crée une balise dans le SVN du code source utilisé pour compiler les exécutables. En utilisant cette balise, j'ai vérifié le code sur une deuxième machine, qui est une machine de développement. J'ai ensuite compilé la source sur la machine de développement. Lorsqu'elle est exécutée, l'application qui a été compilée sur la machine de développement ne fonctionne pas exactement comme celle compilée par le serveur de construction. Par exemple, sur les machines de test, une exécution DateTime Parse est détectée par l'application. Cependant, l'exécutable de la machine de construction ne lance aucune exception. Si je cours l'exécutable sur la machine de développement aucune exception n'est levée. Donc, en résumé, les deux machines utilisent théoriquement le même code source et les mêmes projets.
L'exécutable de la machine de développement ne fonctionne que sur la machine de développement. L'exécutable de la machine de construction fonctionne sur toutes les machines, y compris la machine de développement. Les paramètres régionaux ou le fuseau horaire de la machine sont-ils stockés dans le fichier exécutable compilé?
Une idée de ce qui pourrait causer ce comportement ou comment vérifier les exécutables pour trouver les différences possibles et les corriger?
Malheureusement, je ne peux pas prendre une machine de test et y attacher un débogueur. Dès que je peux, je le ferai.
Je ne peux pas exécuter de débogueur sur l'un des ordinateurs de test pour le moment. Je le ferai dès que possible. –