internal void LoadAndCallMethod(string Library, string MethodName) { PerformValidationCheck(Library); var LoadedLibraryPTR = Load(Library); var LibraryToLoadCurrentProcPTR = NativeImport.LoadLibrary(Library); var PTRToMethod = NativeImport.GetProcAddress(LibraryToLoadCurrentProcPTR, MethodName); CallMethod(PTRToMethod, IntPtr.Zero); }
public static void InstallHook() { if (WinKBHookCallbackDelegate == null && WKBHookInstance == IntPtr.Zero) { WinKBHookCallbackDelegate = new NativeImport.WindowsHookAdditionals.HookProc(HookedKBWindowsCallback); var hinstance = NativeImport.LoadLibrary("User32"); WKBHookInstance = NativeImport.SetWindowsHookEx(NativeImport.WindowsHookAdditionals.HookType.WH_KEYBOARD_LL, WinKBHookCallbackDelegate, hinstance, 0); Logger.Log("Installed Keyboard hook."); } }
internal Loader(string ProcessName) { try { LoadedProcess = Process.GetProcessesByName(ProcessName).First(); } catch (Exception) { Console.WriteLine($"Could Not Find Process: {ProcessName}"); Console.Read(); Environment.Exit(0); } Kernel32PTR = NativeImport.LoadLibrary("kernel32"); LoadLibraryPTR = NativeImport.GetProcAddress(Kernel32PTR, "LoadLibraryA"); }
public void InstallHooks(IntPtr hwnd) { winMSHookCallbackDelegate = new NativeImport.WindowsHookAdditionals.HookProc(HookedMSWindowsCallback); winKBHookCallbackDelegate = new NativeImport.WindowsHookAdditionals.HookProc(HookedKBWindowsCallback); var hinstance = NativeImport.LoadLibrary("User32"); wMSHookInstance = NativeImport.SetWindowsHookEx(NativeImport.WindowsHookAdditionals.HookType.WH_MOUSE_LL, winMSHookCallbackDelegate, hinstance, 0); wKBHookInstance = NativeImport.SetWindowsHookEx(NativeImport.WindowsHookAdditionals.HookType.WH_KEYBOARD_LL, winKBHookCallbackDelegate, hinstance, 0); rIUtils = new RawInputUtils(hwnd); Console.WriteLine("Installed input hooks"); }
internal static IntPtr GetFunctionAddress(string LibraryName, string FunctionName) { IntPtr HModule = NativeImport.LoadLibrary(LibraryName); return(NativeImport.GetProcAddress(HModule, FunctionName)); }
public static nint GetFunctionAddress(string libName, string funcName) => NativeImport.GetProcAddress(NativeImport.LoadLibrary(libName), funcName);