Im essayant d'écrire une application qui prend un écran chaque 40ms et il enregistre sur le disque, im obtenir une erreur dans GDIPourquoi suis-je susceptible d'obtenir une erreur dans GDI dans une application d'enregistrement d'écran C#?
Quelqu'un sait si im trop aventureux essayer d'enregistrer une capture d'écran comme jpeg tous les 40ms ou un taux de 25 fps?
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
using System.Drawing;
using System.Windows.Forms;
namespace ScreenRecorder
{
class Program
{
private static System.Timers.Timer screenTimer;
private static int screenNumber;
static void Main(string[] args)
{
screenTimer = new System.Timers.Timer(40);
// Hook up the Elapsed event for the timer.
screenTimer.Elapsed += new System.Timers.ElapsedEventHandler(screenTimer_Elapsed);
screenTimer.Enabled = true;
Console.Read();
}
static void screenTimer_Elapsed(object sender, System.Timers.ElapsedEventArgs e)
{
//get the screen
Image myImage = CaptureScreen();
myImage.Save(@"C:\stuff\Development\ScreenRecorder\ScreenImages\img" + screenNumber + ".jpg");
myImage.Dispose();
screenNumber++;
}
private static Image CaptureScreen()
{
Rectangle screenSize = Screen.PrimaryScreen.Bounds;
Bitmap target = new Bitmap(screenSize.Width, screenSize.Height);
using (Graphics g = Graphics.FromImage(target))
{
g.CopyFromScreen(0, 0, 0, 0, new Size(screenSize.Width, screenSize.Height));
}
return target;
}
}
}
est le message d'erreur un secret? =) – BeemerGuy
Vous devriez écrire votre erreur pour nous sauver de la compiler nous-mêmes. – DMan