Bonjour et bonne semaine à toutes et à tous,
Je suis toujours dans mes soucis de compilation en ligne de commande.
Après avoir bien étudié tout ça et suivi les conseils donnés ici, je me suis fais 2 fichiers .bat de compilation.
Le premier utilise msbuild.exe sur les fichiers .csproj et fonctionne sans problème.
Pour essayer de mieux comprendre le fonctionnement de csc.exe, j'ai voulu tenter d'utiliser directement le compilo.
Le second utilise csc.exe et là, problème que j'expose maintenant.
Dans les variables système, l'installation du framework 3.5 a ajouté le chemin
C:\WINDOWS\Microsoft.NET\Framework\v3.5
Dans le path utilisateur, pour avoir accès à csc.exe de n'importe répertoire, j'ai ajouté
C:\Windows\Microsoft.NET\Framework\v2.0.40607
Mon projet est écrit avec C# 2008.
Quand je me positionne dans le dossier concerné et que j'utilise csc.exe sur mon projet, ça marche parfaitement sauf que la ligne de commande semble utiliser la version 3.5 de de .net, alors que mon projet doit être compilé pour .net 2.0.
Compilateur Microsoft (R) Visual C# 2008 version 3.5.21022.8
pour Microsoft (R) .NET Framework version 3.5
Copyright (C) Microsoft Corporation. Tous droits réservés.
Si j'utilise le chemin complet
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\csc.exe
le csc pour .net 2.0 est bien utilisé.
Microsoft (R) Visual C# 2005 Compiler version 8.00.50727.1433
pour Microsoft (R) Windows (R) 2005 Framework version 2.0.50727
Copyright (C) Microsoft Corporation 2001-2005. Tous droits réservés.
Mais je me ramasse des dizaines d'erreur de compilation.
La ligne indique qu'elle utilise la version "Visual C# 2005 Compiler" , alors que j'ai la version 2008 installée.
Est-ce tout ça vous semble logique ?
Quel csc.exe devrais-je utiliser pour compiler mon projet vs 2008 en .net 2.0 ?
Question subsidiaire: Existe il une solution générique pour savoir si un assembly ou un programme est compatible pour une version spécifique de .net ?
Papy !
Partager