title: Why im getting Win32Exception: The operation completed successfully?
body: <p>This is my code just taking a screenshots of the entire screen.
  After it's working for few time it's throwing the exception.</p>
  
  <pre><code>using System;
  using System.Collections.Generic;
  using System.ComponentModel;
  using System.Data;
  using System.Drawing;
  using System.Linq;
  using System.Text;
  using System.Windows.Forms;
  using System.Drawing.Imaging;
  
  namespace Capture_ScreenShots
  {
      public partial class Form1 : Form
      {
          string bfbc;
          string save_location;
          int save_image;
          int screenWidth;
          int screenHeight;
  
          public Form1()
          {
              InitializeComponent();
              save_location = @"c:\screenshots\sc1\";
              timer1.Enabled = true;
              timer1.Interval = 200;
              save_image = 0;
          }
  
          private void Form1_Load(object sender, EventArgs e)
          {
  
          }
  
          private void timer1_Tick(object sender, EventArgs e)
          {
              save_image = save_image + 1;
              bfbc = save_location  + save_image.ToString("D3") + ".jpg";
  
              screenWidth = Screen.GetBounds(new Point(0, 0)).Width;
              screenHeight = Screen.GetBounds(new Point(0, 0)).Height;
              Bitmap bmpScreenShot = new Bitmap(screenWidth, screenHeight);
              Graphics gfx = Graphics.FromImage((Image)bmpScreenShot);
              gfx.CopyFromScreen(0, 0, 0, 0, new Size(screenWidth, screenHeight));
              bmpScreenShot.Save(bfbc, ImageFormat.Jpeg);
          }
      }
  }
  </code></pre>
  
  <p>The exception is on the line:</p>
  
  <pre><code>gfx.CopyFromScreen(0, 0, 0, 0, new Size(screenWidth, screenHeight));
  </code></pre>
  
  <p>This is the exception message:</p>
  
  <pre><code>System.ComponentModel.Win32Exception was unhandled
    HResult=-2147467259
    Message=The operation completed successfully
    Source=System.Drawing
    ErrorCode=-2147467259
    NativeErrorCode=0
    StackTrace:
         at System.Drawing.Graphics.CopyFromScreen(Int32 sourceX, Int32 sourceY, Int32 destinationX, Int32 destinationY, Size blockRegionSize, CopyPixelOperation copyPixelOperation)
         at System.Drawing.Graphics.CopyFromScreen(Int32 sourceX, Int32 sourceY, Int32 destinationX, Int32 destinationY, Size blockRegionSize)
         at Capture_ScreenShots.Form1.timer1_Tick(Object sender, EventArgs e) in d:\C-Sharp\Capture_ScreenShots\Capture_ScreenShots\Capture_ScreenShots\Form1.cs:line 44
         at System.Windows.Forms.Timer.OnTick(EventArgs e)
         at System.Windows.Forms.Timer.TimerNativeWindow.WndProc(Message&amp; m)
         at System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
         at System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG&amp; msg)
         at System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(IntPtr dwComponentID, Int32 reason, Int32 pvLoopData)
         at System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context)
         at System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context)
         at System.Windows.Forms.Application.Run(Form mainForm)
         at Capture_ScreenShots.Program.Main() in d:\C-Sharp\Capture_ScreenShots\Capture_ScreenShots\Capture_ScreenShots\Program.cs:line 18
         at System.AppDomain._nExecuteAssembly(RuntimeAssembly assembly, String[] args)
         at System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence assemblySecurity, String[] args)
         at Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()
         at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
         at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
         at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
         at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
         at System.Threading.ThreadHelper.ThreadStart()
    InnerException:
  </code></pre>
  
  <p>Not sure why the exception happen.
  It is working fine but only for a very short time.</p>