COMPILATION ET RÉFLECTION

lakichemole Messages postés 253 Date d'inscription vendredi 13 juin 2003 Statut Membre Dernière intervention 18 mai 2009 - 30 janv. 2009 à 10:37
lakichemole Messages postés 253 Date d'inscription vendredi 13 juin 2003 Statut Membre Dernière intervention 18 mai 2009 - 30 janv. 2009 à 15:43
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/49106-compilation-et-reflection

lakichemole Messages postés 253 Date d'inscription vendredi 13 juin 2003 Statut Membre Dernière intervention 18 mai 2009
30 janv. 2009 à 15:43
oki :)
thiosyiasar Messages postés 186 Date d'inscription lundi 11 mars 2002 Statut Membre Dernière intervention 30 novembre 2010 3
30 janv. 2009 à 15:35
Si j'ai compris :), c'est vrai que j'aurais pu détecter les using du code, mais je préfère un exemple le plus simple possible.
lakichemole Messages postés 253 Date d'inscription vendredi 13 juin 2003 Statut Membre Dernière intervention 18 mai 2009
30 janv. 2009 à 15:22
Non en fait se que je voulais dire c'est que tu aurais pu parcourir ton code en récupérant tous les using et après pour chaque using récupéré ba tu rajoute ta ligne un truc du genre:
foreach string using in ListUsingTrouve
{
oCompPrms.ReferencedAssemblies.Add(using);
}
ça rendrais plus générique si bien que pour rajouter un using tu n'a qu'a le faire dans ta partie code (version string)
Je sais pas si je em fait comprendre :/
thiosyiasar Messages postés 186 Date d'inscription lundi 11 mars 2002 Statut Membre Dernière intervention 30 novembre 2010 3
30 janv. 2009 à 15:05
* On peut générer un exe ? oui
oCompPrms.GenerateExecutable = true;
oCompPrms.GenerateInMemory = false;
* Utilité ?
Dans mon cas, une application ou l'utilisateur peut ajouter certaines fonctionnalité avec du code C#.
* System de plugins ?
On utilise des interfaces dans l'application, et la réflexion(objet Activator) pour définir l'implémentation dans une dll qui implémente ces interfaces.
oximoron Messages postés 149 Date d'inscription mercredi 23 juillet 2003 Statut Membre Dernière intervention 30 janvier 2009
30 janv. 2009 à 13:26
Merci, c'est clair et concis peut être un peu trop ;) je me pose quand même quelques questions : On peut générer un exe avec la compilation à la volé ? Dans quels cas c'est utile (car on peut vite faire des trucs bien crados) ? Un système de plugin (développés par des tiers pour une appli) marche de cette façon ?
thiosyiasar Messages postés 186 Date d'inscription lundi 11 mars 2002 Statut Membre Dernière intervention 30 novembre 2010 3
30 janv. 2009 à 13:21
Salut et merci pour ton commentaire.



Je ne suis pas expert sur l'utilisation du compilo mais j'ai l'impression comme c'est comme dans visual studio :.

Tu dois ajouter une référence à ton projet et utiliser la directive using dans ton code.


donc.

// Définition des références.

oCompPrms.ReferencedAssemblies.Add("System.Windows.Forms.dll");

using dans le code sinon ca compile pas.



Si tu as un autre moyen, il est le bien venu :)
lakichemole Messages postés 253 Date d'inscription vendredi 13 juin 2003 Statut Membre Dernière intervention 18 mai 2009
30 janv. 2009 à 10:37
Exemple sympas :) ça change des source habituelles, petit question par contre pourquoi tu ne fais pas l'inclusion de tes dll à partir du code (et pas en dure)?
Je m'explique, tu fait un "using System.window.form" dans ton code, on pourrais imaginer un parser qui cherche les using et qui inclue en conséquence les dll qui vont bien?
Ou je m'égards peut être!!