c#远程监控客户端

整理说明

实现了截取屏幕并通过网络发送出去,未做接收处理。

示例代码

using System;
using System.Collections.Generic;
using System.Text;
using System.Threading;
using System.Windows.Forms;
using System.Timers;
using System.Drawing;
using System.IO;
using System.Net;
using System.Net.NetworkInformation;
using System.Net.Sockets;
namespace ConsoleApplication4
{
class Program
{
static string ip = "10.196.30.253";
static bool start = true;
static void SendMessage()
{
TcpClient client = new TcpClient(ip, 9000);
NetworkStream nws = client.GetStream();
while (start)
{
byte[] bytes = GetScreen();
nws.Write(bytes, 0, bytes.Length);
nws.Flush();
Thread.Sleep(20);
}
nws.Close();
client.Close();
}
static byte[] GetScreen()
{
Bitmap bmp = new Bitmap(Screen.PrimaryScreen.Bounds.Width, Screen.PrimaryScreen.Bounds.Height);
Graphics g = Graphics.FromImage(bmp);
g.CopyFromScreen(0, 0, 0, 0, Screen.PrimaryScreen.Bounds.Size);
MemoryStream ms = new MemoryStream();
bmp.Save(ms, System.Drawing.Imaging.ImageFormat.Bmp);
byte[] byteimage=new byte[ms.Length];
byteimage=ms.ToArray();
bmp.Dispose();
g.Dispose();
ms.Close();
return byteimage;
}
static void Main(string[] args)
{
Thread th = new Thread(new ThreadStart(SendMessage));
th.Start();
}
}
}
原文地址:https://www.cnblogs.com/shya/p/2353970.html