22

有没有办法使用 .NET 技术记录屏幕,无论是桌面还是窗口。

我的目标是免费的。我喜欢小型、低 cpu 使用率和简单的想法,但如果他们创造出更好的最终产品,我会考虑其他选择。

简而言之,我知道如何在 C# 中截取屏幕截图,但是如何将屏幕或屏幕区域录制为视频?

非常感谢您的想法和时间!

4

5 回答 5

19

不需要第三方 DLL。这个简单的方法将当前屏幕图像捕获到 .NET Bitmap 对象中。

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

我相信您可以弄清楚如何捕获屏幕的一小部分,如果需要的话:-)。

于 2008-12-29T14:25:51.753 回答
4

您可以使用 Windows 媒体编码器 SDK 构建 ac# 应用程序来录制屏幕。有内置选项可以记录整个桌面、特定窗口或屏幕的一部分。

于 2009-02-17T07:08:45.650 回答
2

有一个 dll 可以做到这一点。不记得它的名字了,但是它被Jing用过。我的一个朋友使用该 dll 在短短几分钟内实现了一个屏幕录像机,仅用于测试。查看 Jing,您可能会找到他们使用的 dll。

于 2008-12-29T14:08:25.377 回答
0

您可以使用 Media Encoder SDK,但它在 Windows 7 上不受支持。

于 2010-07-10T07:43:03.303 回答
-2

你可以试试这个开源实用程序:ScreenRecord ( http://screenrecord.codeplex.com/ ) 它基于 AForge.NET

于 2015-11-26T06:41:20.340 回答