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#)