C# 截屏并保存图片

需要用C#做一个项目,记录客户端屏幕动态,并将情况保存到服务器上。目前已经实现在客户端上隔0.1s截屏一次,并将屏幕图片保存到服务器上。但是无论是以FTP上传至服务器还是... 需要用C#做一个项目,记录客户端屏幕动态,并将情况保存到服务器上。目前已经实现在客户端上隔0.1s截屏一次,并将屏幕图片保存到服务器上。但是无论是以FTP上传至服务器还是转换成字符串存入服务器Oracle数据库,结果客户端CPU使用率都非常高,甚至达到50%,并且图片数量和体积也大得惊人.
想请问各位C#达人,用什么方法可以降低CPU使用率。包括优化截屏、存储图片、减少服务器数据库压力 。(基本功能不能变,并且得到图片能够还原。)
展开
 我来答
menghanshi
2011-10-29 · TA获得超过317个赞
知道答主
回答量:42
采纳率:100%
帮助的人:35.4万
展开全部
可以先将截获的图片保存在本地,再通过多线程的方式传送到服务器上,还有,图片不要放在数据库里,image类型的数据很大的,直接放在服务器上,数据库里放图片路径就行了。同时客户端截屏后保存图片的格式尽量用jpg,png等格式,bmp格式图片太大了。当然,还有其他的一些优化方法你可以在网上找找。
追问
这些我都试过,保存的图片采用jpg,并且只保存为前后两张图的变化部分,图片量小了很多,可是还原起来更复杂了,最主要的是CPU使用率仍居高不下。郁闷!
bejtvneq
2011-10-28 · 超过11用户采纳过TA的回答
知道答主
回答量:135
采纳率:0%
帮助的人:60万
展开全部
Rectangle r = Screen。PrimaryScreen。Bounds; Image img = new Bitmap(r。Width, r。Height); Graphics g = Graphics。FromImage(img); g。CopyFromScreen(new Point(0, 0), new Point(0, 0), r。Size); img。Save("c:\tmp。jpg"); leg七lqêXyipd|汀蓼wл幛
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
灰人王
2011-10-28 · TA获得超过2456个赞
知道大有可为答主
回答量:2401
采纳率:0%
帮助的人:920万
追问
截屏的功能已经有了,我想知道如何优化整个项目。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式