2011-11-11 6 views
-2

J'ai créé une formule pour mon application. Je sais qu'il y a beaucoup de décompilateurs pour casser mon application, je veux appeler un fichier de classe de mon serveur et l'enregistrer dans mon chemin de destination comme C: \ test \ Formula.cs et l'appeler depuis mon fichier exe où il se trouveComment appeler une classe à partir d'un autre lecteur

C:\Users\Administrator\Documents\Visual Studio 2008\Projects\WindowsFormsApplication8\WindowsFormsApplication8\bin\Debug\myApp.exe 

de même, puisque vous pouvez lire un fichier texte comme celui-ci:

StreamReader reader = new StreamReader("C:\\test.txt"); 

Je veux lire ma classe comme ceci:

Class readerclass = new Class("C:\\test\\Formula.cs"); 

Toute aide est appréciée.

+2

Je ne comprends pas, vous voulez distribuer des fichiers .cs avec votre application et les compiler et les charger au moment de l'exécution? Pourquoi? –

+0

il y a une formule que je ne veux pas que quelqu'un le sache car il y a beaucoup de décompilateurs qui peuvent décompiler mon application je veux appeler la classe et la supprimer après le travail –

+0

Mais si vous distribuez le fichier .cs, il est encore plus facile voir le code, aucune décompilation n'est nécessaire !! –

Répondre

3

Vous ne pouvez pas faire cela. C# est un langage compilé! Vous ne pouvez pas simplement arrêter la source et essayer de l'exécuter. Pour ce faire, vous devrez le compiler à la volée et lire dans l'assemblage résultant, etc. Ce serait un désastre.

Maintenant, si vous avez compilé des assemblys hébergés sur le serveur, vous pouvez les télécharger, les charger avec Assembly.LoadFrom() et ensuite instancier des classes à partir de cela.

1

Vous devez soit créer un projet library qui contient le formula.cs (dll) ou include/add ce fichier formula.cs dans votre projet en cours.

Questions connexes