C#实现简单屏幕监控的方法
作者:igoo 发布时间:2023-07-31 10:29:25
标签:C#,屏幕,监控
本文实例讲述了C#实现简单屏幕监控的方法。分享给大家供大家参考。具体如下:
这是一段C#编写的屏幕监控代码,可以自动对屏幕进行截图,软件自身隐藏
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace Screen
{
public partial class Form1 : Form
{
public Form1()
{
//主窗体桌面不显示 仅在进程中显示
InitializeComponent();
this.WindowState = FormWindowState.Minimized;
this.ShowInTaskbar = false;
SetVisibleCore(false);
}
protected override void SetVisibleCore(bool value)
{
base.SetVisibleCore(value);
}
private void timer1_Tick(object sender, EventArgs e)
{
//获得当前屏幕的大小
Rectangle rect = new Rectangle();
rect = System.Windows.Forms.Screen.GetWorkingArea(this);
Size mySize = new Size(rect.Width, rect.Height);
Bitmap bitmap = new Bitmap(rect.Width, rect.Height);
Graphics g = Graphics.FromImage(bitmap);
g.CopyFromScreen(0, 0, 0, 0, mySize);
string ImageName = DateTime.Now.ToString("yyyyMMdd_hhmmss") + ".jpg";
bitmap.Save("F://screen//" + ImageName);
//释放资源
bitmap.Dispose();
g.Dispose();
GC.Collect();
}
private void Form1_Load(object sender, EventArgs e)
{
timer1.Enabled = true;//激活timer控件
}
}
}
希望本文所述对大家的C#程序设计有所帮助。
0
投稿
猜你喜欢
- 在一般性开发中,笔者经常看到很多同学在对待java并发开发模型中只会使用一些基础的方法。比如Volatile,synchronized。像L
- 一、作用和区别 break的作用是跳出当前循环块(for、while、do while)或程序块(switch)。在循环块中的作用
- 本文实例讲述了Java使用JDBC实现Oracle用户认证的方法。分享给大家供大家参考,具体如下:两天时间写的小品,以前的J2EE环境基本使
- springboot远程debug调试1.首先去编辑器打开项目2.打开Edit Configurations 选择remote选项
- OleDbConnection,OracleConnection 或者SqlConnection这种连接,直接执行sql语句。现在的连接方式
- Java去掉指定字符串的开头的指定字符/** * 去掉指定字符串的开头的指定字符 *
- Intellij IDEA 公司 JetBrains 推出了一种新字体:JetBrains Mono,它是专为开发人员设计的。为什么说它是专
- 本文实例讲述了java之swing下拉菜单实现方法。分享给大家供大家参考。具体如下:import java.awt.*;import jav
- 实践过程效果代码public partial class Form1 : Form{ public Form1()
- 最近有小伙伴问我,双枚举类该怎么写,还得包括根据key取值方法。于是就手写一个案例如下:/** * 关系类型枚举 */public enum
- 前面一篇文章实现了使用ViewPager实现 * launcher拖动效果 ,后来很多朋友问能不能实现左右循环滑动效果和引导页面。今天实现了左
- Model与Session区别什么是Session:Session:在计算机中,尤其是在网络应用中,称为“会话”。它具体是指一个终端用户与交
- 本文实例展示了DevExpress根据条件设置GridControl RepositoryItem是否可编辑的方法。一般在C#项目的开发中,
- 最近要做动态数据的提交处理,即需要分析提交数据字段定义信息后才能明确对应的具体字段类型,进而做数据类型转换和字段有效性校验,然后做业务处理后
- Spring Data JPA映射自定义实体类这个问题困扰了我2天=-=,好像也能使用 jpql解决先说下自己的功能:查询oracle最近s
- 概述1、邮件相关的标准厂商所提供的 JavaMail 服务程序可以有选择地实现某些邮件协议,常见的邮件协议包括:SMTP(Simple Ma
- Spring Batch job任务只跑一次在一次实际使用spring batch的过程中,在定时任务中,第一次执行Job没有出现问题,然后
- 装箱(boxing)和拆箱(unboxing)是C#类型系统的核心概念.是不同于C与C++的新概念!,通过装箱和拆箱操作,能够在值类型和引用
- 一、导入前言:导入必须用post请求具体原因在2中叙述1、Excel导入总结一下目标,就是要将excel中的数据行、逐一提取,最后得到一个l
- 本文实例讲述了Java对象数组定义与用法。分享给大家供大家参考,具体如下:所谓的对象数组,就是指包含了一组相关的对象,但是在对象数组的使用中