Générateur de solutions visual studio .net

Description

Cette source permet de compiler une solution VS .NET 2003 (j'ai pas testé pour 2002) contenant des projets C# et/ou VB.NET sans Visual Studio, pour ceux qui n'ont pas VS.NET/VB.NET/VC#.NET ou tout simplement dans des cas où on peut pas installer VS.NET (perso je garde mes sources sur une clef USB avec le framework .NET dessus, et c'est bien pratique de pouvoir compiler mes projets sur place). Elle permet aussi de changer les options transmises au compilateur, par exemple de spécifier telle config, de suprimmer tel avertissement, etc.

J'ai ajouté un petit support pour les projets VC++ .NET: MakeNet peut générer une solution qui contient un projet VC++ .NET déjà compilé, c'est à dire qu'il peut lire un tel projet et repérer le fichier cible du projet.
Attention: le support de VC++ .NET est EXPERIMENTAL.
Si ca marche, c'est bien, sinon tant pis.

Pour l'instant les seules solutions que j'arrive pas à générer sont celles qui utilisent des contrôles ActiveX ou des composants COM.

Voici en gros comment il marche:

Si on le lance sans paramètre il va chercher à compiler une solution dans le dossier en cours.
S'il y a plusieurs solutions dans le dossier en cours ou qu'on ne le lance pas à l'invite de commandes, on peut spécifier la solution:

makenet /solution:"fichier"

On peut aussi compiler un projet seul (qui n'a pas de dépendances de projets):

makenet /project:"fichier"

On peut sélectionner une configuration pour tous les projets:

makenet /config:Debug

Ou pour chaque projet:

makenet {Projet1: /config:Debug} {Projet2: /config:Release}

En règle générale chaque option de MakeNet peut être utilisée avec un projet précis.
On peut aussi passer des arguments au compilateur:

makenet /debug- {Projet1: /debug+}
makenet /nologo

On peut aussi afficher des infos sur les projets présents dans la solution:

makenet /showinfo

Enfin, l'option /#debug attend que l'utilisateur appuie sur une touche avant de fermer la console.

Conclusion :


Même s'il n'y a pas besoin de VS.NET pour la compilation, on a toujours besoin du Framework .NET, mais c'est beaucoup plus facile à déployer que VS .NET :)

Pour le compiler, lancer juste build.bat dans le dossier du projet. Il devrait d'abord se compiler avec des options globales puis se recompiler lui-même avec les options du projet.

Ce qu'il reste à faire:
-inscription dans le GAC
-inscription pour COM Interop
-utilisation de contrôles ActiveX ou COM

Voilà. J'espère que ca sera utile à d'autres que moi :)

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.