I am writting a plugin for a program, and I want to put my code inside a DLL so I can share the plugin freely without exposing (giving away) my code.
Here is the basic structure i have access to :
using System;
public class Plugin
{
    public void Initialize()
    {
        //do stuff here
        doWork();
    }
}
Then i just reference the .cs file my code is at and the program "eats" up this Plugin. Now, i have put several logic in there, consisting mostly of functions that arent tied directly to "Initialize()", only on the doWork() function, that starts the whole system.
Now, I want to put all my code inside a DLL, and then just call from inside Initialize(), myDll.doWork() (or something like that).
PS: This dll would ofc be a compiled C# library (could it be called dynamic assembly import? it wouldnt really be dynamic since it would be compiled pre-execution anyways, right?)
PS2: This way I can also add custom resources like forms, images and such without much difficulty right?
PS3: Is there a free tool for protecting the code inside such DLL? (ie protect from beeing easily re engineered)
Thanks in advance =)
Found exactly what I was looking for, here it is:
using System.Reflection;
using System.IO;
try
{
    Assembly a = null;
    a = Assembly.LoadFrom(Application.StartupPath startupPath + "MyAssembly.dll"); 
    Type classType = a.GetType("MyNamespace.MyClass");
    object obj = Activator.CreateInstance(classType);
    MethodInfo mi = classType.GetMethod("MyMethod");
    mi.Invoke(obj, null);
}
catch (Exception e)
{                 
    AddLog(e.Message);            
}
                        If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With