Beispiel #1
0
 public void Dispose()
 {
     if (!WindowsApi.SetThreadDesktop(originalDesktop))
     {
         WindowsHelpers.CheckLastError();
     }
 }
Beispiel #2
0
        /// <summary>
        /// Switches to the <paramref name="newDesktopHandle"/> desktop.
        /// </summary>
        public DesktopContext(IntPtr newDesktopHandle)
        {
            originalDesktop = WindowsApi.GetThreadDesktop(WindowsApi.GetCurrentThreadId());
            if (originalDesktop == IntPtr.Zero)
            {
                WindowsHelpers.CheckLastError();
            }

            if (!WindowsApi.SetThreadDesktop(newDesktopHandle))
            {
                WindowsHelpers.CheckLastError();
            }
        }