Win32Exeption: Операция успешно завершена... графика

Я искал какое-то решение, но ни один человек не показывает решение... Буду признателен, если кто-нибудь сможет объяснить, почему это происходит и как его решить (простым способом):)

Происходит в одном и том же месте все время... через пару минут после запуска программы.

private static Bitmap bmpScreenShot;
private static Graphics gfxScreenShot;
...
...

bmpScreenShot = new Bitmap(Screen.PrimaryScreen.Bounds.Width,
    Screen.PrimaryScreen.Bounds.Height, PixelFormat.Format32bppArgb);
gfxScreenShot = Graphics.FromImage(bmpScreenShot);
gfxScreenShot.CopyFromScreen(Screen.PrimaryScreen.Bounds.X,
    Screen.PrimaryScreen.Bounds.Y, 0, 0, Screen.PrimaryScreen.Bounds.Size, 
    CopyPixelOperation.SourceCopy); // <-- Occurs here a while after ive started the application

Он запускается пару раз (скажем, 40-80 раз), прежде чем это произойдет:

Win32Exeption не обработано: операция успешно завершена

2 ответа

Решение

Оказывается, я должен был сделать bmpScreenShot.Dispose(); а также gfxScreenShot.Dispose();

Прежде чем идти дальше, создайте оператор try and catch:

try
{
    //Your code goes here
}
catch (Win32Exception e)
{
    //Handle the exception here, or use one of the following to find out what the issue is:
    Console.WriteLine(e.Message);
    MessageBox.Show(e.Message, "Exception");
}
Другие вопросы по тегам