[DllImport("AntiDLLInject.dll", CallingConvention = CallingConvention.Cdecl)]
private static extern void Activate();
static void Main(string[] args)
{
Activate();
//etc...
}

static class AntiDllInjection
{
[DllImport("AntiDLLInject.dll", CallingConvention = CallingConvention.Cdecl)]
private static extern void Activate();
private static MD5 hasher = MD5.Create();
private static readonly string md5checksum = "6E7E31653A365CC66D5CF977B2A9B473";
public static void Protect()
{
if (string.Concat(hasher.ComputeHash(File.ReadAllBytes("AntiDLLInject.dll"))
.Select(x => x.ToString("X2"))) == md5checksum)
Activate();
else
throw new Exception();
}
}
try
{
AntiDllInjection.Protect();
}
catch (Exception)
{
Console.WriteLine("Can't load protection...");
}