Record Video of Screen using .NET technologies

Chris Craft picture Chris Craft · Dec 29, 2008 · Viewed 50.2k times · Source

Is there a way to record the screen, either desktop or window, using .NET technologies.

My goal is something free. I like the idea of small, low cpu usage, and simple, but would consider other options if they created a better final product.

In a nutshell, I know how to take a screenshot in C#, but how would I record the screen, or area of the screen, as a video?

Thanks a lot for your ideas and time!

Answer

driis picture driis · Dec 29, 2008

There is no need for a third party DLL. This simple method captures the current screen image into a .NET Bitmap object.

    private 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;
    }

I am sure you can figure out how to capture a smaller portion of the screen, if that is needed :-).