internal static void CreateAndInitialize(IntPtr taskbarHandle) { Instance = new Taskbar(); Instance.Handle = taskbarHandle; Instance.Rectangle = User32.GetWindowRectangle(Instance.Handle); Instance.TaskbarResizeHandle = User32.RegisterWindowSizeChangeEvent(Instance.Handle, taskbarResizeDelegate); }
/// <summary> /// Tries to get the taskbar of the running windows system. /// (MSTaskListWClass) /// </summary> /// <returns>A Taskbar representing object for manipulation.</returns> /// <exception cref="PlatformNotSupportedException">No TaskBar could be obtained.</exception> public static Taskbar GetTaskbar() { if (Taskbar.Instance != null) { return(Taskbar.Instance); } IntPtr taskbarHandle = TaskBarHandle; if (taskbarHandle == IntPtr.Zero) { throw new PlatformNotSupportedException($"The TaskBar cound't be obtained."); } Taskbar.CreateAndInitialize(taskbarHandle); return(GetTaskbar()); }