Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/339.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在屏幕保护模式(c#)下捕获屏幕?_C#_Screen_Capture_Screensaver - Fatal编程技术网

如何在屏幕保护模式(c#)下捕获屏幕?

如何在屏幕保护模式(c#)下捕获屏幕?,c#,screen,capture,screensaver,C#,Screen,Capture,Screensaver,我创建了一个捕获当前屏幕的应用程序,并将其用作表单的背景图像。该应用程序在VisualStudio中正常工作,当我通过编译的exe运行它时,以及当exe重命名为scr时。但是,当我按照默认屏幕保护程序(文件上下文菜单->安装)安装scr文件时,捕获的屏幕始终是桌面,而不是前台活动的窗口 private void Form1_Load(object sender, EventArgs e) { this.Location = new System.Drawing.Po

我创建了一个捕获当前屏幕的应用程序,并将其用作表单的背景图像。该应用程序在VisualStudio中正常工作,当我通过编译的exe运行它时,以及当exe重命名为scr时。但是,当我按照默认屏幕保护程序(文件上下文菜单->安装)安装scr文件时,捕获的屏幕始终是桌面,而不是前台活动的窗口

   private void Form1_Load(object sender, EventArgs e)
    {
        this.Location = new System.Drawing.Point(0, 0);
        this.Size = new System.Drawing.Size(3200, 900);

        var tela = new Bitmap(3200, 900, PixelFormat.Format32bppArgb);
        var imagem = Graphics.FromImage(tela);

        imagem.CopyFromScreen(0, 0, 0, 0, this.Size,
                                    CopyPixelOperation.SourceCopy);

        tela.Save("tela.png", ImageFormat.Png);

        this.BackgroundImage = new Bitmap("tela.png");
    }

有吗?当我们所拥有的只是“我希望我的应用程序执行X,但它执行Y”时,很难提供帮助。编辑您的答案并将代码放在那里。单击编辑器上的
按钮以获取有关在答案中设置代码格式的帮助。您有一些吗?当我们所拥有的只是“我希望我的应用程序执行X,但它执行Y”时,很难提供帮助。编辑您的答案并将代码放在那里。单击编辑器上的
按钮以获取有关在答案中设置代码格式的帮助。