public GraphicsCardHook(IntPtr address, Settings settings) { _settings = settings; var dxgiHandle = Utility.GetModuleHandle("dxgi.dll"); var getDescPtr = dxgiHandle + getDescOffset; GetDesc1Original = (GetDesc1Delegate) Marshal.GetDelegateForFunctionPointer(getDescPtr, typeof (GetDesc1Delegate)); _name = string.Format("GetDescHook_{0:X}", getDescPtr.ToInt32()); _hook = LocalHook.Create(getDescPtr, new GetDesc1Delegate(GetDesc1Detour), this); _hook.ThreadACL.SetExclusiveACL(new Int32[] {0}); }
public GraphicsCardHook(IntPtr address, Settings settings) { _settings = settings; var dxgiHandle = Utility.GetModuleHandle("dxgi.dll"); var getDescPtr = dxgiHandle + getDescOffset; GetDesc1Original = (GetDesc1Delegate)Marshal.GetDelegateForFunctionPointer(getDescPtr, typeof(GetDesc1Delegate)); _name = string.Format("GetDescHook_{0:X}", getDescPtr.ToInt32()); _hook = LocalHook.Create(getDescPtr, new GetDesc1Delegate(GetDesc1Detour), this); _hook.ThreadACL.SetExclusiveACL(new Int32[] { 0 }); }