Chinaunix首页 | 论坛 | 博客
  • 博客访问: 537266
  • 博文数量: 576
  • 博客积分: 40000
  • 博客等级: 大将
  • 技术积分: 5020
  • 用 户 组: 普通用户
  • 注册时间: 2008-10-13 14:47
文章分类

全部博文(576)

文章存档

2011年(1)

2008年(575)

我的朋友

分类:

2008-10-14 14:52:48

querw:没有经过压缩是没什么实际意义的.类似的程序我的做法是:把屏幕分成10 * 10的一百份,截屏的时候与上一次的位图(dibs一个一个字节比较,不同比例 > 1%的时候发送该小块.但是还是不行,只能在局域网中使用.如果能用JPG压缩一下就好了:)可惜不大会
(发表于2004-9-25 20:54:00)

戴维:压缩的我倒是做过的,速度明显快很多。基本上能实时监视局域网中的机器。
网上有很多JPG编码的库,实在不行用CXIMAGE这个大家伙也能行。
(发表于2004-9-28 22:12:00)

wshust:我觉得速度的关键在网络
(发表于2004-9-30 9:53:00)

fastxyf:全屏发送,数据量太大了,发送变化数据才行.
winvnc就是只发变化数据,压缩用ZLib也不错
(发表于2004-10-13 11:14:00)

sinall:CSocket有问题
你可以考虑把数据分成小块发送,然后在接受段合并。
这个在vckbase好像有个文件传输的例子,我在下边发文了,你可以参考一下。
(发表于2004-10-13 11:56:00)

cqz5777:归纳三点:
1。截屏
2。类似文件传输
3。这种代码以后别拿出来丢人,没有一点的技术含量
(发表于2004-10-17 23:22:00)

wshust:说的是,教训的对!redface!
多数的时候我也觉得很多的大家伙作起来是搭积木的感觉!
第一次发表.有偷懒和不负责之处,以后改正!
(发表于2004-10-20 12:28:00)

wshust:以后多多学习!再接再历
(发表于2004-10-20 12:29:00)

wshust:我发表出来这篇文章的另一个主要的目的,就像文章中提到的一样,在本机上调试可以通过,但是当两台机子对联的时候就会有问题,根本无法显示.并且我用调试器跟踪过代码,网络传输的字节一个也没有少.我一直以为有位高手说出问题的症结所在,可惜好像说的都是些我不感兴趣的意见,我期待着有象cqz5777那样的人有一天可以做出有我们民族自己尊严的软件,而不是一味 的指手划脚.让我们也为有这样的hero而骄傲!

我也期待着cqz5777在vckbase上showshow自己到底有怎样的功底!
............
............
............
.............
(发表于2004-10-24 13:26:00)

tengcomic:每篇文章都要有技术含量!!!你还让不让新手活呀!!!cqz5777别自以为是高手就了不起了!!!垃圾一个!!!
(发表于2004-10-27 16:43:00)

good784:tengcomic 呵呵!不太同意你的看法,尽管我知道cqz5777是垃圾!
但是我觉得这样的文章有一定的价值!而且这篇文章也不是没有技术含量!
其实再大的程序还不是正象wshust说的那样一点一点的拼起来的吗?
程序写来写去,就是处理算法和数据结构,搂主也是做这样的事情! 做程序也是这样的。候杰写代码还不是这样!
如果cqz5777说没有价值,我看谁写程序都是没有价值的东西,因为程序就是一些基本的东西搭建起来的玩意。
要我现在写程序的话,我都觉得自己在抄写msdn。
学到后来才知道,一个创意才是最重要的,技术上本来就没有什么实现不了的!
(发表于2004-11-8 22:47:00)

good784:还有就是cqz5777自己写的程序我想也许更加的垃圾!
我想他也不是什么高手,如果能够写出搂住这样的代码吗?
还有就是什么叫做程序高手?其实很多的人认为做驱动,
做串口,并口或者钩子,网络。。都不是,我认为高手并不一定要了解底层,就像候杰不知道硬件一样是高手。
高手就是用简单的象sprintf 这样的代码写出好程序的人。不用任何的技巧才是真实!

我实际上是怀疑的。在处理字符内存等方面,搂主也表现出来了绝对不是新手,尽管需要改进一些东西。
搂住愿意把自己的东西与大家分享,实难可贵!
大家都加油!
(发表于2004-11-8 22:53:00)

wshust:我是小李飞刀!比较赞同good784的说法,其实真的学到后来才慢慢的觉得平平淡淡的程序才是真。用一些花哨的系统调用没有什么值得骄傲的!也不算是什么程序高手!
等有一天大家都真的有机会接触了串口com1或com2或者并口LPT1或LPT2的时候,有一天接触驱动ddk或者是drive suite  或者是vxd的时候 会发现:::啊!怎么里面也没有什么高明的东东,还是我们平时用的_inp ;_outp
{
mov dx xx;
mov ax xx;
int dx ax;}
啊?处理起来还是这样的一些简单的操作,<<移位 |按位或;&按位与
然后看看驱动中处理io 请求IRP 哇!各种io请求不管是直接的还是间接的io都是我们平时用的一些简单的c语言
原来编程也不过如此啊!!
呵呵!不管是谁(包括候杰)建议还是谦虚一点比较的好。
cqz5777你说是么??
(发表于2004-11-9 15:18:00)

edust:取全屏幕分包之后再用zlib压缩分包,最后发送

"只传送变化的部分".是怎样判断两幅图片的不同处的?
各位,有谁可以告诉我?
E-Mail:kinggame99@21cn.com
(发表于2004-11-14 7:25:00)

ankun1982:小李飞刀的这个程序在传输位图以前如果能够将位图压缩成JPEG的格式然后在传输,在服务器端直接显示JPEG图就可以加快传输速度了,这个问题我研究了一下午了,都没在网上找到好的办法,不知道各位有没有什么好办法。网上的将BMP转成JPEG的文章好多,没几个可以用的,也许是我太笨,所以请教各位。小弟先谢了。

“...背着几十斤重的瓷砖挨家挨户敲门...”
(发表于2004-11-16 15:12:00)

sandy6173:每个人都是从一点一滴慢慢积累起来的,像我们这样的新手当然需要一些简单点的文章看看,都写的那么深奥中国软件就完了。
   我也想过写这样的一个监视软件,我当时的思路是这样的:
   1、把屏幕分成若干等份,多线程分别与自己前一时刻做比较。
   2、如果有变化,则转化成jpg。
   3、进行zip压缩。(不过我不知道jpg进行zip压缩变化大不大)
   4、多线程文件传送
这样我想速度应该能快点。
(发表于2004-12-29 17:30:00)

ycl:我也做个一个类似的程序,我没有直接把图像数据压缩成JPG的,而是把图像变成256色的。再进行行程编码,结果数据还是比较小,从截屏到发送完大约要200ms(CPU1.7G,RAM256DDR),发现时间大部分用在图像数据的提取上。我试了用GDI+,在内存中直接压缩了JPG,GIF等格式,可是发现占用太多的CPU时间。在C++BUILDER中使用内存流,C++BUILDER用压缩成JPG的,结果比在VC中做的好一点。想要快一点的话可能只能从底层读取图像数据,比如从显卡驱动中读取。还有一个办法是得到屏幕的刷新区。

(发表于2005-1-21 16:09:00)

dTianx:If you want to get the whole screen image, you need to get the screen dc to get the image.
then you want to refresh it, you should know which rect changed then just redraw the very rect.
in WinVnc, it used Vitural Device Driver(it is MsgHook, SetWindowHookEx is enough.), you can know which part of the screen have been changed then refresh it.
(发表于2005-3-5 19:55:00)

proad:=================================================向分享自己知识的人致敬,无论知识的深浅,绝大多数网友还是尊重你们的。人还是谦虚些好,有意无意的贬低别人不但会伤害作者,也让读者反感,也让自己的形象受损,没有一点好处。

我经常到codeproject之类的国外站点看,那里的回复常常是先“great job”之类的鼓励开头,再提自己看法问题或建议,真希望国内的开发站点也能形成这样和气的氛围,大家一起提高。
=================================================

(发表于2006-4-11 21:10:00)

..........................................................................
--------------------next---------------------

阅读(283) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~