每5分钟拍摄一次活动窗口的屏幕截图,并将其保存在文件中
本文关键字:屏幕截图 保存 文件 存在 窗口 5分钟 活动 一次 | 更新日期: 2023-09-27 17:57:04
已经搜索过,但没有从任何地方获得帮助!捕获场景并将其保存在文件夹中
所以你的问题在于如何每 5 分钟运行一次任务。使用计时器:
var timer = new System.Timers.Timer(TimeSpan.FromMinutes(5).TotalMilliseconds);
timer.Elapsed += Timer_Elapsed;
timer.Start();
private static void Timer_Elapsed(object sender, ElapsedEventArgs e)
{
// call the function that takes the screenshot
}
使用此函数捕获屏幕:
private static Image CaptureScreen()
{
Rectangle screenSize = Screen.PrimaryScreen.Bounds;
var 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;
}
保存到文件:
var currentImage = CaptureScreen();
currentImage.Save(Path.Combine("Your directory path", "Your file name"));
您是否在每次保存图像时创建一个新文件名,这意味着,而不是:
image.Save(@"D:'documents'FYP'snippetsource.jpg", ImageFormat.Jpeg);
执行以下操作:
image.Save(string.Format(@"D:'documents'FYP'snippetsource_{0}.jpg", Guid.NewGuid()), ImageFormat.Jpeg);
您可以使用对应用程序更有意义的任何唯一字符串更改Guid.NewCuid()
。
希望对您有所帮助!