我按下Print Screen按钮后试图截取我的显示器.使用下面的代码我试图检查剪贴板中是否有任何内容.如果是这样,我试图将其保存在c:\文件夹中.但Clipboard.ContainsImage()总是返回0,但是当我粘贴在Paint中时,会有一个图像.
我在某地读到这可以通过代表来完成.请让我知道如何做到这一点.
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Drawing.Imaging;
namespace Example2
{
class Program
{
static void Main(string[] args)
{
if (Clipboard.ContainsImage())
{
//System.Drawing.Image screenshot = new System.Drawing.Image();
Image screenshot = Clipboard.GetImage();
screenshot.Save("c:\\screenshot.jpg");
}
Console.ReadLine();
}
}
}
Run Code Online (Sandbox Code Playgroud)
小智 6
问题是您正在尝试从控制台应用程序访问剪贴板,但如果您要在表单中尝试它,这将起作用.如果你输入这个属性,你也可以使上面的代码工作.
[STAThread()]
static void Main(string[] args)
{
Run Code Online (Sandbox Code Playgroud)
使用它作为参考: Clipboard.getImage在线程内部不起作用