2009-06-18 7 views
1

J'ai compilé une application NET 2.0 en utilisant C# 2005 Express sur une machine qui contient également VS 2008 Express. Lorsque j'exécute l'application sur une machine avec .NET 2.0 SP1 runtime seule l'application ne s'exécute pas et déclenche une erreur d'envoi de rapport à Microsoft etc. J'ai l'impression que le compilateur a référencé silencieusement certaines bibliothèques 3.5 et que l'exécutable l'attend sur la machine cible. Comment puis-je forcer la compilation à être pure .NET 2.0?L'application compilée .NET 2.0 échoue sur la machine sans .NET 3.5 runtime

+4

Pourquoi soupçonnez-vous cela? Quelle est l'erreur exacte? – RBarryYoung

+1

J'ai trouvé le problème. L'application faisait référence à la version 1.2.9 de log4net et pour une raison étrange, elle était référencée à partir du cache global de la machine de développement. J'ai défini la propriété "Copy Local" sur true et recompilé et cela fonctionne maintenant correctement. – Raj

+0

À la vôtre. Quel type de déploiement utilisez-vous? – marr75

Répondre

2

Dans la page des propriétés du projet à l'aide de Visual Studio 2008, vous pouvez cibler des versions de structure spécifiques. Cependant, si vous compilez ceci dans VS2005, il serait étrange que ce soit votre problème, mais des choses étranges se sont produites.

0

Vérifiez le journal des événements pour les erreurs et utiliser la journalisation de fusion pour essayer d'identifier ce que ENSEMBLES sa tentative de faire référence (si vous croyez que la tentative de chargement des assemblages dans le cadre DotNet 3.5)

2

En plus destinée à un cadre spécifique En tant que mentioned by marr75, vous devrez également vérifier que tous les autres assemblys référencés ciblent .net 2.0. Si vous utilisez des assemblys tiers, ils peuvent avoir des exigences pour .NET 3.5.

0

Vous mentionnez que vous avez "compilé" l'application avec 2005, mais a-t-elle été "créée" en 2005 ou 2008? Si créé en 2008, il peut y avoir des choses dans le fichier de configuration ou des références à réviser.

Questions connexes