2009-03-25 5 views

Répondre

3

Vous pouvez le faire avec CompileAssemblyFromSource. J'ai fait quelque chose de similaire dans le passé, où j'ai augmenté certains scripts avec des wrappers de classe statiques afin qu'ils puissent être facilement appelés. Pour ce faire, chargez simplement votre modèle, ajoutez vos amplifications supplémentaires au code et compilez-le en une seule fois.


Si vous souhaitez modifier un ensemble existant, vous aurez besoin d'utiliser quelque chose comme Mono.Cecil. Il vous permet de charger et de modifier en tant qu'assemblage lors de l'exécution. Il y a un article CodeProject utilisant Reflexil, un produit GPL basé sur Cecil, qui peut vous aider à trouver des idées ...

+0

Merci pour le lien, c'est très utile! Et donc vous voulez dire, que le seul moyen est de changer le code source avant la compilation, pas après? – abatishchev

+0

Non. Cependant, vous pouvez probablement utiliser quelque chose comme Cecil (http://www.mono-project.com/Cecil) pour injecter dans votre assemblage. Je vais mettre à jour pour inclure cela. –