public ClipboardViewer(IHiddenWindowMessages hiddenWindow) { this.hiddenWindow = hiddenWindow; nextViewer = NativeMethods.SetClipboardViewer(hiddenWindow.Handle); if (nextViewer == IntPtr.Zero && Marshal.GetLastWin32Error() != 0) { throw new Win32Exception(); } hiddenWindow.AddHook(WindowProc); hiddenWindow.Disposed += Source_Disposed; }
public TaskbarIcon(IAppInfo appInfo, IHiddenWindowMessages messages) { lockObject = new object(); taskbarRestartedMessageId = WinApi.RegisterWindowMessage("TaskbarCreated"); messages.AddHook(WindowProc); messages.Disposed += Messages_Disposed; iconData = NotifyIconData.CreateDefault(messages.Handle); iconData.IconHandle = appInfo.Icon.Handle; Util.WriteIconData(ref iconData, NotifyCommand.Modify, IconDataMembers.Icon); // create the taskbar icon Show(); }