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