2010-11-15 1 views
0

Je fais de la maintenance sur certains logiciels construits à l'origine par mon prédécesseur dans l'entreprise (qui a depuis évolué vers des pâturages plus verts). Je suis en train de déployer une nouvelle version du logiciel.Erreur lors du déploiement de la révision de mon logiciel sur les sessions de terminal au lieu des postes de travail?

Dans cette société, la procédure d'installation consiste simplement à placer le répertoire/bin/Release dans le répertoire magique de notre programme de mise à jour automatique, ce qui lui permet de copier automatiquement le contenu de ce répertoire. Laisse la magie arriver. La magie semble toujours se produire, donc il n'y a pas de gros problème, même si ça me dérange un peu, après plusieurs années d'installateurs .msi ...

Quoi qu'il en soit, le déploiement du nouveau logiciel s'est bien passé sur deux de nos serveurs de fichiers, mais le déployer dans le troisième et dernier emplacement est allé un peu différemment.

La troisième section de la société n'utilise pas le logiciel de déploiement automatique. Ils utilisent tous le logiciel Remote Desktop Connection de Windows pour exécuter le logiciel directement sur le serveur.

Je vais donc sur le serveur, vérifie que la version actuelle fonctionne (ce qu'elle est), la sauvegarde, etc. puis copie exactement le même logiciel qui fonctionne très bien sur toutes nos autres machines. Le nouveau logiciel ne fonctionne plus correctement avec les bibliothèques tierces qu'il utilise (intégration Crystal Reports et IBM Informix), même si ces bibliothèques sont installées au même emplacement et à la même version sur tous les PC, la machine de développement inclus.

L'ancienne version du logiciel accédait exactement aux mêmes bibliothèques externes et cela fonctionnait correctement. Il n'y a pas non plus de configuration de construction spéciale pour le serveur terminal, pour autant que je sache.

Quelqu'un peut-il penser que le programme n'accède plus correctement à ces DLL? J'ai essayé de copier le programme sur le serveur retour à mon PC et cela fonctionne très bien. Je ne vois tout simplement pas que cela soit directement lié au logiciel de connectivité Crystal Reports ou Informix, mais je ne vois pas ce qu'il pourrait bien être.

EDIT: En essayant de suivre la suggestion de 0xA3, j'ai essayé de changer la plate-forme cible de l'application, et j'ai découvert quelques DLL usercontrol, qui sont référencées par le programme. J'essaie actuellement de recréer ces composants, car la modification de la plate-forme cible empêche les DLL de fonctionner.

+1

Pouvez-vous définir "ne réussit pas à jouer"? Pourriez-vous être plus précis? –

+0

Oh, désolé. Crystal Reports lui-même lève une boîte de dialogue Crystal Reports pour me dire qu'il y a un problème (ce n'est pas particulièrement spécifique) et que l'élément Informix lance une exception et meurt. – Frosty840

+0

J'ai déjà vu des problèmes de permissions avant que le logiciel s'exécute sur des serveurs Terminal Server. – Brad

Répondre

1

Comme il n'y a pas d'informations d'erreur beaucoup plus détaillée pour commencer, je voudrais faire une supposition aveugle:

Le système d'exploitation sur le serveur de terminal peut être un 64 OS-bit alors que les autres machines sont des versions 32 bits de Windows.

En même temps, la cible construite du programme a été changée de x86 à AnyCPU.

Voir si c'est le cas et si c'est le cas, retournez-le à x86.

Si ce n'est pas le cas, vous devez faire d'autres analyses pour voir ce qui ne va pas. Existe-t-il des exceptions lors de l'accès à la bibliothèque tierce? Des erreurs particulières apparaissent dans Process Monitor?Last but not least: Jetez un oeil à votre référentiel de code source et voir ce qui a été changé par rapport à la version précédente.

+0

Je n'ai aucune idée de ce qui * s'est * mal passé, mais c'était une combinaison de compilation pour la mauvaise plateforme et quelques DLLs (pas celles déjà mentionnées) qui ne fonctionneraient pas du tout.J'ai fini par les retirer, ce qui m'a permis de changer la plate-forme cible en x86, mais je suis damné si je connais la cause profonde du problème. problème, seulement que c'est résolu. – Frosty840

0

Regardez la situation logique:

Has the 3rd section of the company used this software before with success, using Remote Desktop?  
If yes 
    what changed between versions? 
If no 
    what is the difference between this environment and the other environments 
    that can use the old version with success, because the difference is likely environmental. 
+0

Il a déjà été utilisé. Rien n'affecté Crystal Reports du tout. Rien n'a changé en ce qui concerne Informix qui devrait provoquer un plantage lorsque la DLL Informix est accessible. La version de tous les logiciels est la même sur toutes les machines. La différence * est * probablement environnementale, mais personne ici n'a eu de problèmes de ce type auparavant, donc je me suis tourné vers StackOVerflow :( – Frosty840

Questions connexes