EasyHook (Easy Injection/Hooking for C# [and C++]) Problem

03/23/2013 06:14 xBlackPlagu3x#1
So I'm having an error that says:

Quote:
FoxxyHooks Error: The given user library does not export a proper Run(EasyHook.InjectionLoader+REMOTE_ENTRY_INFO) method in the 'EasyHook.IEntryPoint' interface.

Debug: System.MissingMethodException: The given user library does not export a proper Run(EasyHok.InjectionLoader+REMOTE_ENTRY_INFO) method in the 'EasyHook.IEntryPoint' interface.
at EasyHook.HelperServiceInterface.WaitForInjection(I nt32 InTargetPID)
at EasyHook.RemoteHooking.InjectEx(Int32 InHostPID, Int32 InTargetPID, InWakeUpTID, Int32 InNativeOptions, String InLibraryPath_x86, String InLibraryPath_x64, Boolean InCanBypassWOW64, Boolean InCanCreateService, Boolean InRequiresStrongName, Object[] InPassThruArgs)
at EasyHook.RemoteHooking.Inject(Int32 IntargetPID, String InLibraryPath_x86, String InLibraryPath_x64, Object[] InPassThruArgs)
at FoxxyHooks.Client.Inject(String dll32, String dll64, String[] args)
And here is the EntryPoint class of my .dll (pastebin):

[Only registered and activated users can see links. Click Here To Register...]



Big thanks to anyone that can halp me.
03/25/2013 00:17 _DreadNought_#2
Code:
public class Main : IEntryPoint
    {
        Hooks k = new Hooks();
        public Main(RemoteHooking.IContext InContext, String InChannelName)
        {
            //Any Initialization code.
        }

        public void Run(RemoteHooking.IContext InContext, String InChannelName)
        {
            k.CreateHooks();

            while (true)
            {
                Thread.Sleep(100);
            }
        }
    }
.

Code:
        static void Main()
        {
            Console.WriteLine("Starting co");
            var p = new Process
                        {
                            StartInfo =
                                {
                                    Arguments = "blacknull",
                                    FileName = "Conquer.exe",
                                    WorkingDirectory = Environment.CurrentDirectory
                                }
                        };
            p.Start();
            Console.WriteLine("Conquer started. Injecting DLL");
            p.WaitForInputIdle();
            //Inject ConquerDefence2 into Conquer.exe

            RemoteHooking.Inject(p.Id, InjectionOptions.DoNotRequireStrongName, "ConquerDefence2.dll", "ConquerDefence2.dll", "");
            Console.WriteLine("Injected... possibly.");
        }