public void Dispose() { WinEventsNativeMethods.UnhookWinEvent(_eventHook); }
public ForegroundWindowWatcher() { _callback = PublishWindowChangeEvent; _eventHook = WinEventsNativeMethods.SetWinEventHook(EVENT_SYSTEM_FOREGROUND, EVENT_SYSTEM_FOREGROUND, IntPtr.Zero, _callback, 0, 0, WINEVENT_OUTOFCONTEXT); }
public bool IsWindowForeground() { return(Process.GetCurrentProcess().MainWindowHandle == WinEventsNativeMethods.GetForegroundWindow()); }
protected override void DisposeManagedResources() { WinEventsNativeMethods.UnhookWinEvent(_eventHook); }