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#程序设计有所帮助。


猜你喜欢
- 前言SpringBoot是我们经常使用的框架,那么你能不能针对SpringBoot实现自动配置做一个详细的介绍。如果可以的话,能不能画一下实
- 可以使用 Intent.createChooser() 的方法来创建 Intent,并传入想要的 Sting 作为标题。 以wallpape
- 今天跟大家聊聊我心目中的物流追踪效果,效果图如下,有需要的朋友,可以直接带走,实现也没有想象中的那么复杂,特别是左边那个时间轴线,没那么复杂
- 在Unity中实现简单的伪时间同步,只是读取数据库所在电脑的当前时间using UnityEngine;using System.Colle
- 本文实例讲述了Android开发之开关按钮用法。分享给大家供大家参考,具体如下:效果如下:以下是布局文件:<?xml version=
- 本文实例讲述了Android利用jsoup解析HTML页面的方法。分享给大家供大家参考,具体如下:这节主要是讲解jsoup解析HTML页面。
- 这个列表总结了10个Java开发人员最常犯的错误。Array转ArrayList当需要把Array转成ArrayList的时候,开发人员经常
- 最近在看进程间的通信,看到了fork()函数,虽然以前用过,这次经过思考加深了理解。现总结如下:1.函数本身(1)头文件#include&l
- 相信很多人都了解c#语言,但是对于c#语言编写应用程序的经验不够多,所以经常为没有实例练习而烦恼吧。今天小编给大家介绍下C#里的多线程技术。
- 前言在上一篇文章中,我们分析了Spring中Bean的实例化过程,在结尾我们知道了虽然bean的实例化完成了,但是其中的属性还没有被注入,今
- Process#waitFor()阻塞问题有时需要在程序中调用可执行程序或脚本命令:Process process = Runtime.ge
- Java 使用IO流实现大文件的分割与合并文件分割应该算一个比较实用的功能,举例子说明吧比如说:你有一个3G的文件要从一台电脑Copy到另一
- 前言项目中时不时遇到查字典表等数据,只需要返回数据,不需要写其他业务,每个字典表可能都需要写一个接口给前端调用,比较麻烦,所以采用下面这种方
- 动态数据源在很多具体应用场景的时候,我们需要用到动态数据源的情况,比如多租户的场景,系统登录时需要根据用户信息切换到用户对应的数据库。又比如
- 本文实例为大家分享了java查找图中两点之间所有路径的具体代码,基于邻接表,供大家参考,具体内容如下图类:package graph1;im
- 提示:IntelliJ IDEA以下简称IDEA;####IntelliJ IDEA 配置git:需要的材料:一、git.exe二、配置gi
- 用注解实现Mybatis插入数据返回自增的主键Id我们在数据库表设计的时候,一般都会在表中设计一个自增的id作为表的主键。这个id也会关联到
- 首先要引用一下类库:using Ionic.Zip;这个类库可以到网上下载。下面对类库使用的封装方法:得到指定的输入流的ZIP压
- 一、Java中锁的概念自旋锁:是指当一个线程获取锁的时候,如果锁已经被其它线程获取,那么该线程将循环等待,然后不断的判断锁是否能被成功获取,
- 代码很简单,功能也很简单,这里就不多废话了#include<stdio.h>int main(){ char ku[16]={&